Kylix Components
Esses componentes
já são conhecidos
da turma do Delphi,
mas são novidade
para quem está aprendendo a programar no
Kylix
Botões, ícones, menus, enfim, uma série de componentes padronizados dão ao computador uma face reconhecível. Um botão tem sempre o mesmo significado em qualquer programa: "Clique-me".
Kylix tem inúmeros componentes que, em maior ou menor grau, dialogam com as pessoas. Este artigo vai abordar uma família de componentes que, com toda razão, está na aba
"Dialogs" (diálogos, em inglês) da paleta de componentes do Kylix. (Esses componentes já são conhecidos da turma do Delphi, mas são novidade para quem está aprendendo Kylix.)
Diálogo para abrir arquivo
O componente TOpenDialog abre uma caixa de diálogo para o usuário selecionar um ou mais arquivos
(veja Figura 1).
São necessários apenas quatro passos para usar o componente TOpenDialog : (1) coloque o componente no formulário; (2) configure as suas propriedades; (3) chame o método Execute ao clicar um botão ou a qualquer momento quando quiser abrir o diálogo e (4) pegue o nome do arquivo selecionado na propriedade FileName.
Exemplo para abrir arquivo (passos 3 e 4):
Listagem 1- Procedimento de TOpenDialog
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Label1.Caption := OpenDialog1.FileName;
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
end;
end;
Diálogo para salvar arquivo
Abrir uma caixa de diálogo para selecionar o nome do arquivo a salvar é tarefa do componente TSaveDialog, irmão gêmeo do TOpenDialog (veja Figura 2).
Este componente também é ativado pelo método Execute e retorna o nome do arquivo selecionado na propriedade FileName. Exemplo:
Listagem 2 Procedimento de TSaveDialog
procedure TForm1.Button2Click(Sender: TObject);
begin
if SaveDialog1.Execute then
Memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;
Diálogo para selecionar fonte
A aplicação pode pedir ao usuário que selecione uma fonte com a caixa de diálogo padrão do componente
TFontDialog (veja Figura 3).
O diálogo é exibido pelo método Execute e a fonte
selecionada retorna na propriedade Font. Exemplo:
Listagem 3 Procedimento de TFontDialog
procedure TForm1.Button3Click(Sender: TObject);
begin
if FontDialog1.Execute then
begin
Memo1.Font.Assign(FontDialog1.Font);
Label1.Font.Assign(FontDialog1.Font);
end;
end;
Juntando tudo
Não é difícil criar um editor de textos honesto com alguns cliques e poucas linhas de código usando os componentes nativos do Kylix.
1º Passo: Prepare o formulário.
- Crie uma nova aplicação: File | New application.
- Coloque no formulário os componentes TLabel, TMemo, TOpenDialog, TSaveDialog, TFontDialog e três TButton (Abrir, Salvar e Escolher fonte). (veja Figura 4).
2º Passo: Configure as propriedades dos componentes.
OpenDialog1
Filter: Todos *.* | Pascal *.pas
Title: Abrir
SaveDialog1
Title: Salvar como
Button1
Caption: Abrir
Button2
Caption: Salvar
Button3
Caption: Fonte
3º Passo: Prepare os procedimentos.
Associe um procedimento no evento OnClick de cada botão: selecione um botão de cada vez, vá ao Object Inspector, clique na aba Events e dê um clique duplo na caixa ao lado do evento OnClick.
Os procedimentos são os mesmos descritos nas listagens 1, 2 e 3.
4º Passo: Não há quarto passo.
É só isso mesmo. Não há mais nada. Simples assim.
Mais componentes
Os componentes de terceiros para Kylix já começaram a aparecer. Um exemplo da nova safra é o dbExpress Gateway for ODBC (ainda em versão beta), da EasySoft. Esse produto permite que uma aplicação Kylix acesse bancos de dados compatíveis com ODBC locais ou remotos. Veja www.easysoft.com/products/kylix/
Espero retornar em breve com mais componentes do Kylix. Enquanto isso, pratique e crie seus próprios componentes seguindo estas seqüências.
Propriedades de TOpenDialog |
Propriedade | Descrição |
FileName | Esta propriedade conterá o nome do último arquivo selecionado pelo usuário.
Ex.: /root/meuarquivo.txt |
Files | Lista de todos os arquivos selecionados pelo usuário. |
Filter | Lista de filtros (opcional). O usuário poderá filtrar a lista de arquivos escolhendo um dos
filtros disponíveis. Ex.: Todos *.* | Pascal *.pas |
FilterIndex | Aponta para um dos filtros da lista. O primeiro filtro é o 1. |
InitialDir | Diretório inicial (opcional). A caixa de diálogo abre o diretório corrente se InitialDir
não for especificado. Ex.: /home/meudir |
Name | Nome interno do componente. |
Options | Opções que regulam o comportamento da caixa de diálogo. |
ofShowHidden | Mostra arquivos escondidos. |
ofOverwritePrompt | Se o arquivo selecionado já está aberto é mostrado um aviso ao usuário.
ofNoChangeDir | O usuário pode pesquisar outros diretórios com a caixa de diálogo, mas o diretório corrente não muda. |
ofAllowMultiSelect | O usuário pode selecionar mais de um arquivo. |
ofPathMustExist | O path do arquivo selecionado tem de existir. |
ofFileMustExist | O arquivo selecionado tem de existir. |
ofViewDetail | Mostra informações detalhadas dos arquivos. |
Title | Título que aparece na barra superior da caixa de diálogo. Ex.: Abrir. |