Usando o controle CommonDialog
O controle CommonDialog fornece um conjunto de caixas de diálogo padrão para operações como abrir e salvar arquivos, definir opções de impressão e selecionar cores e fontes. O controle também pode exibir ajuda quando o mecanismo de Ajuda do Windows estiver em execução.
O controle CommonDialog fornece uma interface entre o Visual Basic e a rotina Commdlg.dll da biblioteca de vínculo dinâmico do Microsoft Windows. Para criar uma caixa de diálogo com esse controle, Commdlg.dll deve estar no diretório MicrosoftWindows/System.
Para usar o controle CommonDialog em sua aplicação, você deve adicioná-lo ao formulário e definir suas propriedades. A caixa de diálogo exibida pelo controle é determinada pelos métodos do controle. Durante o tempo de execução, a caixa de diálogo ou mecanismo de ajuda será exibida após chamar o método correspondente durante o design, o controle CommonDialog será exibido como um ícone no formulário; O tamanho deste ícone não pode ser alterado.
O controle CommonDialog pode exibir as seguintes caixas de diálogo comuns:
"Abrir"
"Salvar como"
"cor"
"Fonte"
"Imprimir"
Para usar o controle CommonDialog
1. Se o controle CommonDialog não for adicionado, você deverá selecionar "Componentes" no menu "Projeto" e adicionar o controle à caixa de ferramentas. Encontre e selecione o controle em "Controles" da caixa de diálogo de marcação e clique no botão "OK".
2. Clique no controle "CommonDialog" na caixa de ferramentas e desenhe o controle no formulário. Quando você desenha um controle CommonDialog em um formulário, o controle será redimensionado automaticamente. Assim como o controle Timer, o controle CommonDialog não é visível em tempo de execução.
3. Ao executar, use os métodos listados na tabela a seguir de forma adequada para exibir o diálogo necessário.
Exibir as caixas de diálogo Abrir e Salvar como
A caixa de diálogo Abrir permite especificar a unidade, o diretório, a extensão do arquivo e o nome do arquivo. A caixa de diálogo Salvar como tem aparência idêntica à caixa de diálogo Abrir, exceto que o título da caixa de diálogo e o nome do arquivo estão esmaecidos. Após selecionar um arquivo e fechar a caixa de diálogo em tempo de execução, você pode usar a propriedade FileName para obter o nome do arquivo selecionado.
Para exibir a caixa de diálogo Abrir
1. Especifique a lista de filtros de arquivos exibidos na caixa de listagem Tipos de arquivos.
A propriedade Filter pode ser definida no seguinte formato:
descrição1|filtro1|descrição2|filtro2...
Descrição é a string exibida na caixa de listagem - por exemplo, TextFiles(*.txt). Filtro é um filtro de arquivo real - por exemplo, *.txt. Cada configuração de filtro de descrição deve ser separada por um símbolo de barra vertical (|).
2. Use o método ShowOpen para exibir a caixa de diálogo.
Após selecionar um arquivo, você pode usar a propriedade FileName para obter o nome do arquivo selecionado.
Para todas as caixas de diálogo públicas, um erro é gerado quando a propriedade CancelError é True e o usuário clica no botão Cancelar da caixa de diálogo. Captura um erro ao exibir a caixa de diálogo para detectar se o botão Cancelar foi pressionado.
O código a seguir exibe a caixa de diálogo Abrir e abre os parâmetros do procedimento de arquivo com o nome de arquivo selecionado:
PRivateSubmnuFileOpen_Click()
'CancelError é verdadeiro.
OnErrorGoToErrHandler
'Definir filtro.
CommonDialog1.Filter=Todos os arquivos(*.*)|*.*|Texto_
Arquivos(*.txt)|*.txt|Arquivos em lote(*.bat)|*.bat
'Especifique o filtro padrão.
CommonDialog1.FilterIndex=2
'Mostra a caixa de diálogo Abrir.
CommonDialog1.ShowOpen
'Chame o procedimento para abrir o arquivo.
OpenFile(CommonDialog1.FileName)
SairSub
ErrHandler:
'O usuário pressiona o botão "Cancelar".
SairSub
Fim Sub
Usando a caixa de diálogo Cor
Use a caixa de diálogo Cor para selecionar uma cor em uma paleta de cores ou para criar e selecionar uma cor personalizada. Em tempo de execução, a propriedade Color pode ser utilizada para obter a cor selecionada após selecionar a cor e fechar a caixa de diálogo.
Para exibir a caixa de diálogo Cor
1. Defina a propriedade Flags do controle CommonDialog para a constante VisualBasic cdlCCRGBInit.
2. Use o método ShowColor para exibir a caixa de diálogo.
Você pode usar a propriedade Color para obter o valor RGB da cor selecionada. O código a seguir exibe a caixa de diálogo Cor quando você clica no botão de comando Command1:
PrivateSubCommand1_Click()
'Defina Cancelar como Verdadeiro.
CommonDialog1.CancelError = Verdadeiro
OnErrorGoToErrHandler
'Defina a propriedade Flags.
CommonDialog1.Flags=cdlCCRGBInit
'Mostra a caixa de diálogo Cor.
CommonDialog1.ShowColor
'Define a cor de fundo do formulário para a cor selecionada'.
Form1.BackColor=CommonDialog1.Color
SairSub
ErrHandler:
'O usuário pressionou o botão "Cancelar".
SairSub
Fim Sub
Usando a caixa de diálogo Fonte
A caixa de diálogo Fonte seleciona fontes com base no tamanho, cor e estilo. Depois que o usuário seleciona uma fonte na caixa de diálogo Fonte, as propriedades a seguir contêm informações sobre as opções do usuário.
Para exibir a caixa de diálogo Fonte
1. Defina a propriedade Flags como uma das seguintes constantes do Visual Basic:
cdlCFScreenFonts (fontes de tela)
cdlCFPrinterFonts (fontes de impressora)
cdlCFBoth (pode ser uma fonte de tela ou de impressora)
Aviso Você deve definir a propriedade Flags para um desses valores antes de exibir a caixa de diálogo Fonte, caso contrário ocorrerá um erro de fonte não presente.
2. Use o método ShowFont para exibir a caixa de diálogo.
O código a seguir define as propriedades de fonte de uma caixa de texto com base nas seleções do usuário na caixa de diálogo Fonte:
PrivateSubCommand1_Click()
'Defina Cancelar como Verdadeiro.
CommonDialog1.CancelError = Verdadeiro
OnErrorGoToErrHandler
'Defina a propriedade Flags.
CommonDialog1.Flags=cdlCFBothOrcdlCFEffects
'Mostra a caixa de diálogo "Fonte".
CommonDialog1.ShowFont
'Defina propriedades de texto com base nas seleções do usuário.
Text1.Font.Name=CommonDialog1.FontName
Text1.Font.Size=CommonDialog1.FontSize
Text1.Font.Bold=CommonDialog1.FontBold
Text1.Font.Italic=CommonDialog1.FontItalic
Text1.Font.Underline=CommonDialog1.FontUnderline
Text1.FontStrikethru=CommonDialog1.FontStrikethru
Text1.ForeColor=CommonDialog1.Color
SairSub
ErrHandler:
'O usuário pressionou o botão "Cancelar".
SairSub
Fim Sub
->