Revista Do Linux
EDIÇÃO DO MÊS
 CD do Mês

 Capa
 Entrevista
 Corporativo
 Plataforma
 Evento
 Seguranca
 Hakers
 Sistema
 

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.

Se o arquivo selecionado já está aberto é mostrado um aviso ao usuário.
Propriedades de TOpenDialog
PropriedadeDescrição FileNameEsta propriedade conterá o nome do último arquivo selecionado pelo usuário.
Ex.: /root/meuarquivo.txt
FilesLista de todos os arquivos selecionados pelo usuário.
FilterLista de filtros (opcional). O usuário poderá filtrar a lista de arquivos escolhendo um dos filtros disponíveis.
Ex.: Todos *.* | Pascal *.pas
FilterIndexAponta para um dos filtros da lista. O primeiro filtro é o 1.
InitialDirDiretório inicial (opcional). A caixa de diálogo abre o diretório corrente se InitialDir não for especificado.
Ex.: /home/meudir
NameNome interno do componente.
OptionsOpções que regulam o comportamento da caixa de diálogo.
ofShowHiddenMostra arquivos escondidos.
ofOverwritePrompt
ofNoChangeDirO usuário pode pesquisar outros diretórios com a caixa de diálogo, mas o diretório corrente não muda.
ofAllowMultiSelectO usuário pode selecionar mais de um arquivo.
ofPathMustExistO path do arquivo selecionado tem de existir.
ofFileMustExistO arquivo selecionado tem de existir.
ofViewDetailMostra informações detalhadas dos arquivos.
TitleTítulo que aparece na barra superior da caixa de diálogo. Ex.: Abrir.

A Revista do Linux é editada pela Conectiva S/A
Todos os Direitos Reservados.

Política de Privacidade
Anuncie na Revista do Linux