delphi comandos
TRANSCRIPT
Delphi 3
Visão Geral do Delphi· Histórico: Linguagens Estruturadas, Linguagens Orientadas a Objeto, Linguagens Orientadas a Evento· Comparação Delphi x VB x C++· Vantagens do Delphi· Conceito de objetos, propriedades, métodos e eventos
O Ambiente Integrado de Desenvolvimento (IDE)· Form· Object Inspector· Editor de Código· Paleta de Componentes· Speed Bar· Barra de Menus
Object Pascal· Tipos de Dados· Constantes· Variáveis· Atribuição, operadores e expressões· Estruturas de Dados: matrizes, registros e conjuntos· Estruturas de Controle Condicional: If, Case· Estruturas de Controle de Repetição: While, Repeat, For· Estruturação do Projeto: programas, procedimentos, funções e Unit’s
Delphi e GUI· Formulários· Componentes no Delphi· Configuração de propriedades· Uso dos métodos· Codificação dos eventos
Entrada e Saída em Arquivos· Arquivos Textos· Arquivos Binários· Operações com arquivos
Trabalhando com Banco de Dados· usando o Wizard· Database Explorer· componentes Data Access e Data Aware
Impressão· Tipo TextFile · Objeto Tprinter· gerador QuickReport
Tratamento de Erros e Exceções
Marcos Humberto Vieira Página 1 de 36
LP III / Lab IIIConteúdo Programático da Disciplina
Delphi 3
1. Como Programar em Delphi 3Frank Engo / Makron Books
ð introduz o Delphi bem de leve, não profundamente. É para aquele que quer ter só o gostinho.
2. Delphi, Segredos e SoluçõesGary Cornell / Makron Books
ð assume que o leitor já conhece programação, aborda vários tópicos sofisticados, mas superficialmente.
3. Aprenda em 21 dias Delphi 2Dan Osier / Campus
ð assume também que o leitor já conhece programação, aborda toda a linguagem.
4. Dominando o Delphi 3 - “A Bíblia”Marco Cantú / Makron Books
ð como o próprio nome diz, é uma referência completa; grosso e cumprido, vai fundo em todos os tópicos.
5. Desenvolvendo Banco de Dados em Delphi Blue, Kister, Leif e Scott - Makron Books
ð o livro definitivo de referência para quem quer utilizar o Delphi para criar aplicações sofisticadas usando BD.
6. Internet
ð http://intermid.com/delphi/delphitips/uudf/dbgrid.htmð http://ww2.delphi.com.br/wim/delphið http://ww3.linkway.com.br/delphibrð http://www.cdrom.com/pub/delphi/ð http://www.chez.com/cjunior/delphi.htmlð http://www.delphi.com/swashzoneð http://www.delphi.com/pccompatð http://www.doit.com/delphið http://www.geocities.com/SiliconValley/8314/delphi.htmð http://www.geocities.com/~pontobrasil/delphiclubð http://www.planetarium.com.br/vobjects/donline/index.htmð http://www.sili.com.br/user/martinsð http://www.tool.com.br/borland.htmð http://developers.href.com/ð http://www.eribeiro.com.br/zemaria
Marcos Humberto Vieira Página 2 de 36
LP III / Lab IIIBibliografia Básica
Delphi 3
Propriedades e Métodos Comuns aos Componentes Visuais
Propriedades:
Nome UsoColor altera a cor de fundo do componenteCursor define o formato do cursor do mouse quando este passar sobre o componenteEnabled indica se o componente responderá (habilitado) ou não (desabilitado) a eventos feitos
pelo mouse, teclado ou tempoFont modifica a fonte, estilo e cor do texto inserido no componenteHeight define a altura do componenteHint define o texto da legenda com componente. O texto é apresentado quando o ponteiro do
mouse “pousa” sobre o componenteLeft define a distância entre o lado esquerdo do componente e o formulárioName identificador para o componenteShowHint indica se o componente deve ou não mostrar a sua legenda quando o ponteiro do
mouse “pousa” sobre eleShowing indica se o componente está ou não visível na tela. Se a propriedade Visible do
componente for True, e de todos os seus ancestrais também, então o componente está sendo mostrado. Do contrário, o componente não está sendo mostrado
TabOrder define a posição do componente na ordem de tabulação de seu proprietário, isto é, a ordem em que o componente recebe o foco quando o usuário pressiona a tecla TAB. O 1o componente tem TabOrder 0 (zero)
TabStop indica se o componente aceitará ou não o foco quando o usuário pressionar a tecla TABTop define a distância entre o lado superior do componente e o formulárioVisible indica se o componente será mostrado ou não quando a janela for apresentada Width define a largura do componente
Métodos:
Nome UsoBringToFront coloca o componente ou formulário à frente dos outros componentes ou dos outros
formuláriosCanFocus indica se o componente pode ou não receber o focoFocused indica se o componente tem ou não o focoSendToBack coloca o componente ou formulário atrás de todos os outros componentes ou dos
outros formuláriosSetBounds estabelece a posição (esquerda, superior) e tamanho (largura, altura) do
componenteSetFocus coloca o foco no componenteShow torna o componente ou o formulário visível
Marcos Humberto Vieira Página 3 de 36
DelphiComponentes da VCL
Delphi 3
Formulário (Form)
Símbolo:
Uso:Elemento básico da interface do usuário, é um objeto no qual são inseridos todos os componentes que irão compor a interface.
Propriedades:
Nome UsoBorderIcons define quais ícones aparecerão na barra de título do formulárioBorderStyle define o estilo da borda do formulário, se o formulário terá um tamanho
fixo ou poderá ser aumentado ou diminuído pelo arrastar da bordaCaption título do formulárioColor cor de fundo do formulárioIcon define o ícone que aparecerá à esquerda na barra de títuloPosition posição inicial do formulário na tela
Eventos:
Nome UsoOnCloseQuery ocorre quando é pedido o fechamento do formulário, podendo ainda a
operação de Close ser abortada (parâmetro CanClose := False;)OnCreate ocorre por default no início da aplicação, quando todos os formulários
são criadosOnShow ocorre quando o formulário está para ser apresentado ao usuário. Este
evento é normalmente usado para preencher o formulário com dados que deverão ser apresentados ao usuário
Métodos:
Nome UsoClose fecha o formulárioShow mostra o formulárioShowModal mostra o formulário de forma Modal, isto é, enquanto o formulário não for
fechado, outras janelas da aplicação estarão inacessíveisHide esconde o formulário, isto é, torna-o invisível, mas não fechaPrint imprime o formulário, tal como ele está sendo visualizado na tela
Marcos Humberto Vieira Página 4 de 36
Delphi 3
Rótulo (Label)
Paleta:Standard
Símbolo:
Uso:texto que não pode ser editado. Usado para mostrar mensagens ao usuário ou rotular outros componentes que não possuem um título (Caption), como caixas de edição (Edit).
Propriedades:
Nome UsoAlignment define a posição do texto dentro da área do RótuloAutoSize define se a área do Rótulo se ajustará ao tamanho da mensagemCaption texto a ser apresentadoFocusControl define qual componente ganhará o foco quando este for para o RótuloWordWrap define se será permitida a quebra de palavra dentro da área para
apresentação da mensagem
Eventos:
Métodos:
Marcos Humberto Vieira Página 5 de 36
Delphi 3
Caixa de Edição (Edit)
Paleta:Standard
Símbolo:
Uso:área para receber uma informação do usuário, ou apresentá-la.
Propriedades:
Nome UsoAutoSelect define se o texto no componente será automaticamente selecionado,
quando o componente ganhar o focoAutoSize define se a altura do componente irá se modificar conforme o tamanho
da fonteCharCase define o tipo da conversão nos caracteres inseridosMaxLength determina o número máximo de caracteres que serão aceitosModified define se ocorreu modificação no conteúdo do componentePasswordChar permite definir um caracter a ser apresentado sempre que um outro
caracter for inserido ReadOnly define se o texto será só para leituraSelLength retorna o comprimento do texto selecionado no componenteSelStart retorna a posição inicial do texto selecionado no componenteSelText contém o texto selecionado no componenteText texto no componente
Eventos:
Nome UsoOnChange ocorre quando o usuário insere ou apaga caracteres no componente OnKeyPress ocorre a cada tecla ASCII pressionada com o foco no componente
Métodos:
Nome UsoClearSelection apaga o texto selecionado no componenteClear apaga todo o texto no componenteSelectAll seleciona todo o bloco de texto do componente
Marcos Humberto Vieira Página 6 de 36
Delphi 3
Botão de Incremento/Decremento (UpDown)
Paleta:Win95/Win32
Símbolo:
Uso:usado para aumentar/diminuir um valor, pelo pressionamento das setas no componente.
Propriedades:
Nome UsoAlignButton quando associado a um componente, permite que seja escolhida a
posição do UpDown em relação ao componenteAssociate define um componente associado, por exemplo, uma Edit, ao UpDown.
Uma alteração num componente provoca alteração no outroIncrement estabelece o valor usado para alterar o componenteMax estabelece o maior valor que o componente pode assumirMin estabelece o menor valor que o componente pode assumirOrientation define se as setas serão mostradas na vertical ou horizontalPosition valor atual do componenteThousands define se existirá separador de milhares no valor do componenteWrap define se o valor irá rolar quando alcançar os limites estabelecidos em
Max e Min
Eventos:
Nome UsoOnChanging ocorre quando o valor do componente (Position) é alterado
Métodos:
Marcos Humberto Vieira Página 7 de 36
Delphi 3
Botão de Comando (Button)
Paleta:Standard
Símbolo:
Uso:normalmente usado para iniciar algum processamento.
Propriedades:
Nome UsoCancel define se o pressionamento da tecla ESC na interface será usada para
ativar o botãoCaption título sobre o botãoDefault define se o pressionamento da tecla ENTER na interface será usada para
ativar o botão
Eventos:
Nome UsoOnClick ocorre quando o usuário ativa o botão, por exemplo, clicando sobre ele
Métodos:
Marcos Humberto Vieira Página 8 de 36
Delphi 3
Botão de Comando com Bitmap (BitBtn)
Paleta:Additional
Símbolo:
Uso:como o Button, também usado para iniciar algum processamento.
Propriedades:
Nome UsoCancel define se o pressionamento da tecla ESC na interface será usada para
ativar o botãoCaption título sobre o botãoDefault define se o pressionamento da tecla ENTER na interface será usada para
ativar o botãoGlyph se o tipo (Kind) for bkCustom, permite que seja escolhida um desenho
para ser apresentado sobre o botãoKind define o tipo do botão, estabelecendo um desenho e título padrõesLayout define a posição do desenho sobre o botão
Eventos:
Nome UsoOnClick ocorre quando o usuário ativa o botão, por exemplo, clicando sobre ele
Métodos:
Marcos Humberto Vieira Página 9 de 36
Delphi 3
Caixa de Edição Mascarada (MaskEdit)
Paleta:Additional
Símbolo:
Uso:área para receber uma informação do usuário, ou apresentá-la, respeitando-se uma máscara de edição.
Propriedades:
Nome UsoAutoSelect define se o texto no componente será automaticamente selecionado,
quando o componente ganhar o focoAutoSize define se a altura do componente irá se modificar conforme o tamanho da
fonteCharCase define o tipo da conversão nos caracteres inseridosEditMask define a máscara que será usada para a edição dos dadosMaxLength determina o número máximo de caracteres que serão aceitosModified define se ocorreu modificação no conteúdo do componentePasswordChar permite definir um caracter a ser apresentado sempre que um outro
caracter for inserido ReadOnly define se o texto será só para leituraSelLength retorna o comprimento do texto selecionado no componenteSelStart retorna a posição inicial do texto selecionado no componenteSelText contém o texto selecionado no componenteText texto no componente
Eventos:
Nome UsoOnChange ocorre quando o usuário insere ou apaga caracteres no componente OnKeyPress ocorre a cada tecla ASCII pressionada com o foco no componente
Métodos:
Nome UsoClearSelection apaga o texto selecionado no componenteClear apaga todo o texto no componenteSelectAll seleciona todo o bloco de texto do componente
Marcos Humberto Vieira Página 10 de 36
Delphi 3
Memorando (Memo)
Paleta:Standard
Símbolo:
Uso:área para receber várias linhas de texto do usuário, ou apresentá-las.
Propriedades:
Nome UsoAlignment define o tipo do alinhamento do texto no componenteLines contém as linhas do texto no componenteMaxLength determina o número máximo de caracteres que serão aceitosModified define se ocorreu modificação no conteúdo do componenteReadOnly define se o texto será só para leituraScrollBars define os tipos de barra de rolamento para o texto no componenteSelLength retorna o comprimento do texto selecionado no componenteSelStart retorna a posição inicial do texto selecionado no componenteSelText contém o texto selecionado no componenteText texto no componenteWantReturns define se o ENTER poderá ser usado para mudar de linha no textoWantTabs define se o TAB poderá ser usado para indentar o textoWordWrap define se ocorrerá mudança de linha quanto o texto inserido alcançar a
margem direita do componente
Eventos:
Nome UsoOnChange ocorre quando o usuário insere ou apaga caracteres no componente OnKeyPress ocorre a cada tecla ASCII pressionada com o foco no componente
Métodos:
Nome UsoClearSelection apaga o texto selecionado no componenteClear apaga todo o texto no componenteSelectAll seleciona todo o bloco de texto do componente
Marcos Humberto Vieira Página 11 de 36
Delphi 3
Botão de Rádio (Radio Button)
Paleta:Standard
Símbolo:
Uso:permite que o usuário escolha 1 (uma) dentre opções que são exclusivas. Quando uma das opções é selecionada, automaticamente a anteriormente selecionada é desmarcada.
Propriedades:
Nome UsoCaption título ao lado do botãoChecked define se o componente está selecionado
Eventos:
Nome UsoOnClick ocorre quando o usuário clica sobre o componente
Métodos:
Marcos Humberto Vieira Página 12 de 36
Delphi 3
Caixa de Seleção (CheckBox)
Paleta:Standard
Símbolo:
Uso:permite que o usuário escolha opções não exclusivas. Cada uma das opções disponíveis pode ser selecionada ou não.
Propriedades:
Nome UsoCaption título ao lado da caixa de seleçãoChecked define se o componente está selecionado
Eventos:
Nome UsoOnClick ocorre quando o usuário clica sobre o componente
Métodos:
Marcos Humberto Vieira Página 13 de 36
Delphi 3
Painel (Panel)
Paleta:Standard
Símbolo:
Uso:agrupar outros componentes na interface ou simplesmente apresentar uma mensagem sobre o componente.
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Alignment define a posição do título (Caption) sobre o componenteBevelInner determina o estilo da moldura internaBevelOuter determina o estilo da moldura externaBevelWdith determina a distância da moldura interna e externaCaption texto a ser apresentado sobre o painel
Eventos:
Métodos:
Marcos Humberto Vieira Página 14 de 36
Delphi 3
Quadro de Grupo (GroupBox)
Paleta:Standard
Símbolo:
Uso:agrupar outros componentes num formulário (container).
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Caption título a ser apresentado
Eventos:
Métodos:
Marcos Humberto Vieira Página 15 de 36
Delphi 3
Quadro de Grupo de Botões de Rádio (RadioGroup)
Paleta:Standard
Símbolo:
Uso:usado para facilitar o agrupamento de Botões de Rádio.
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Caption título a ser apresentadoColumns define a quantidade de colunas na listaItemIndex número do item selecionado na lista. Se nenhum selecionado, vale -1Items contém os itens que aparecem na lista
Eventos:
Métodos:
Marcos Humberto Vieira Página 16 de 36
Delphi 3
Imagem (Image)
Paleta:Additional
Símbolo:
Uso:mostrar um desenho no formulário. Suporta bitmap (*.BMP), metafile (*.WMF) e ícones (*.ICO).
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Picture imagem a ser apresentada pelo componenteStretch define se a imagem será redimensionada para ocupar toda a área do
componente. Sem efeito se arquivo for do tipo ícone (*.ICO)
Eventos:
Métodos:
Marcos Humberto Vieira Página 17 de 36
Delphi 3
Caixa de Listagem (ListBox)
Paleta:Standard
Símbolo:
Uso:lista de opções da qual o usuário poderá selecionar os itens apresentados.
Propriedades:
Nome UsoColumns define a quantidade de colunas na listaExtendSelect se MultiSelect for True, define se o usuário pode selecionar um bloco de
itens de uma só vezIntegralHeight define se os itens serão apresentados integralmente, na verticalItemIndex número do item selecionado na lista. Se nenhum selecionado, vale -1Items contém os itens que aparecem na listaMultiSelect define se vários itens podem ser selecionadosSelCount número de itens que foram selecionados, quando MultiSelect for True. Se
nenhum item estiver selecionado, vale 0Selected define quais itens da lista estão selecionadosSorted indica se os itens na lista estarão ordenados alfabeticamente
Eventos:
Nome UsoOnClick ocorre quando o usuário clica sobre um item, ou se move pela listaOnDblClick ocorre quando o usuário dá um duplo clique sobre um item da lista
Métodos:
Nome UsoClear elimina todos os itens da listaItems.Add insere um novo item na listaItems.Delete remove um item da lista
Marcos Humberto Vieira Página 18 de 36
Delphi 3
Caixa Combinada (ComboBox)
Paleta:Standard
Símbolo:
Uso:lista de opções da qual o usuário poderá selecionar uma delas, ou fazer a entrada de um novo item.
Propriedades:
Nome UsoDropDownCount determina o tamanho da lista, isto é, o número máximo de itens que
podem ser apresentados sem necessitar de uma barra de rolagemItemIndex número do item selecionado na lista. Se nenhum selecionado, vale -1Items contém os itens que aparecem na listaMaxLength determina o número máximo de caracteres que serão aceitosSorted indica se os itens na lista estarão ordenados alfabeticamenteStyle define como se o componente se comportará à forma como o usuário
poderá visualizar e selecionar os itensText texto no componente, fornecido ou selecionado
Eventos:
Nome UsoOnChange ocorre quando o usuário insere ou apaga caracteres no componente OnClick ocorre quando o usuário clica sobre um item, ou se move pela listaOnDblClick ocorre quando o usuário dá um duplo clique sobre um item da listaOnKeyPress ocorre a cada tecla ASCII pressionada com o foco no componente
Métodos:
Nome UsoClear elimina todos os itens da listaItems.Add insere um novo item na listaItems.Delete remove um item da lista
Marcos Humberto Vieira Página 19 de 36
Delphi 3
Menu Principal (Main Menu)
Paleta:Standard
Símbolo:
Uso:permite a construção do menu principal de um formulário (barra de menu).
Propriedades:
Nome UsoCaption título do menu, isto é, a opção que será apresentada ao usuárioEnabled indica se o item do menu estará habilitado para o usuárioItems itens do menu. Abre o construtor de menus quando selecionadaShortCut tecla de atalho para o item do menuVisible indica se o item do menu estará visível para o usuário
Eventos:
Nome UsoOnClick ocorre quando o usuário clica num item do menu
Métodos:
Marcos Humberto Vieira Página 20 de 36
Delphi 3
Botão de Atalho (Speed Button)
Paleta:Additional
Símbolo:
Uso:usado para criar barras de ferramentas.
Propriedades:
Nome UsoCaption título sobre o botãoDown útil quando botão pertence a um grupo, para determinar qual botão
estará inicialmente “abaixado”Glyph desenho a ser apresentado sobre o botãoGroupIndex número do grupo ao qual pertence o botão. Num grupo, quando um
botão é pressionado, ele permanece “abaixado”, enquanto os demais ficam “levantados”
Layout determina a posição do desenho em relação ao título
Eventos:
Nome UsoOnClick ocorre quando o usuário ativa o botão, por exemplo, clicando sobre ele
Métodos:
Marcos Humberto Vieira Página 21 de 36
Delphi 3
Caixa de Diálogo Abrir Arquivo (OpenDialog)
Paleta:Dialogs
Símbolo:
Uso:disponibiliza uma caixa de diálogo padrão para seleção de arquivos para abertura.
Propriedades:
Nome UsoDefaultExt extensão default caso o usuário forneça um nome de arquivo sem
especificar sua extensãoFileName nome do arquivo selecionado pelo usuárioFiles lista dos arquivos selecionados, caso tenha sido definido que o usuário
poderá escolher vários arquivos, em OptionsFilter define os filtros de arquivos FilterIndex define qual o filtro da lista de filtros será o defaultInitialDir diretório inicial do qual será apresentada a lista de arquivos existentes,
de acordo com o filtro correnteOptions define várias opções de aparência e comportamento do OpenDialogTitle texto a ser apresentado na barra de título da janela
Eventos:
Métodos:
Nome UsoExecute invoca o OpenDialog, permitindo a seleção dos arquivos
Marcos Humberto Vieira Página 22 de 36
Delphi 3
Caixa de Diálogo Salvar Arquivo (SaveDialog)
Paleta:Dialogs
Símbolo:
Uso:disponibiliza uma caixa de diálogo padrão para que o usuário possa especificar nomes de arquivos nos quais ocorrerá uma gravação.
Propriedades:
Nome UsoDefaultExt extensão default caso o usuário forneça um nome de arquivo sem
especificar sua extensãoFileName nome do arquivo selecionado pelo usuárioFiles lista dos arquivos selecionados, caso tenha sido definido que o usuário
poderá escolher vários arquivos, em OptionsFilter define os filtros de arquivos FilterIndex define qual o filtro da lista de filtros será o defaultInitialDir diretório inicial do qual será apresentada a lista de arquivos existentes, de
acordo com o filtro correnteOptions define várias opções de aparência e comportamento do OpenDialogTitle texto a ser apresentado na barra de título da janela
Eventos:
Métodos:
Nome UsoExecute invoca o SaveDialog, permitindo a seleção dos arquivos
Marcos Humberto Vieira Página 23 de 36
Delphi 3
Caixa de Diálogo Imprimir (PrintDialog)
Paleta:Dialogs
Símbolo:
Uso:disponibiliza uma caixa de diálogo padrão para que o usuário possa especificar parâmetros de impressão.
Propriedades:
Nome UsoCollate estado da caixa de seleção “Agrupar”Copies valor da caixa de edição “Número de Cópias”FromPage valor da caixa de edição “de”MaxPage valor máximo para a página final informadaMinPage valor mínimo para a página inicial informadaOptions define várias opções de aparência e comportamento do PrintDialogPrintRange define o tipo de intervalo de impressão selecionadoPrintToFile estado da caixa de seleção “Imprimir em Arquivo”ToPage valor da caixa de edição “até”
Eventos:
Métodos:
Nome UsoExecute invoca o PrintDialog, permitindo a configuração dos parâmetros de
impressão
Marcos Humberto Vieira Página 24 de 36
Delphi 3
Barra de Progresso (ProgressBar)
Paleta:Win95/Win32
Símbolo:
Uso:usado para mostrar graficamente a situação de um processamento, o quanto já foi feito e o quanto ainda falta para concluir.
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Max posição final da barra de progressoMin posição inicial da barra de progressoPosition posição atual da barra de progressoStep incremento em Position a cada ocorrência do evento StepIt
Eventos:
Métodos:
Nome UsoStepIt chamado para incrementar Position pelo valor de Step
Marcos Humberto Vieira Página 25 de 36
Delphi 3
Barra de Rolamento (Scroll Bar)
Paleta:Standard
Símbolo:
Uso:usado para rolar o conteúdo de um outro componente, ou disponibilizar um recurso gráfico para alteração de um valor a ser usado na aplicação.
Propriedades:
Nome UsoKind define se a barra será horizontal ou verticalLargeChange estabelece o valor do incremento ou decremento da caixa de rolamento
quando o usuário clica na barra de rolamentoMax estabelece o maior valor que a caixa de rolamento pode assumirMin estabelece o menor valor que a caixa de rolamento pode assumirPosition valor atual da caixa de rolamentoSmallChange estabelece o valor do incremento ou decremento da caixa de rolamento
quando o usuário clica nas setas nas extremidades da barra de rolamento
Eventos:
Nome UsoOnChange ocorre quando o valor da caixa de rolamento é alterado
Métodos:
Marcos Humberto Vieira Página 26 de 36
Delphi 3
Barra de Status (StatusBar)
Paleta:Win95/Win32
Símbolo:
Uso:usado para disponibilizar na interface uma área para mensagens para o usuário.
Propriedades:
Nome UsoAlign define a posição do componente no formulário (área do cliente)Panels painéis da barra de status. Abre o editor de painéis quando selecionada
Eventos:
Métodos:
Marcos Humberto Vieira Página 27 de 36
Delphi 3
Temporizador (Timer)
Paleta:System
Símbolo:
Uso:usado para provocar um evento periodicamente, após decorrido um especificado espaço de tempo.
Propriedades:
Nome UsoInterval intervalo de tempo, em milisegundos, entre as ocorrências dos eventos
Eventos:
Nome UsoOnTimer ocorre a cada intervalo de tempo definido pelo valor de Interval
Métodos:
Marcos Humberto Vieira Página 28 de 36
Delphi 3
· modelo
· construindo a interface
1. inicialize o Delphi;2. no menu File, escolha New Application;3. acesse a janela de propriedades do Form (Object Inspector), pressionando F11 ou escolhendo Object
Inspector no menu View;4. dê um duplo clique no + à frente da propriedade BorderIcons;5. altere o valor da sub-propriedade biMaximize para False;6. altere o valor da propriedade BorderStyle para bsSingle;7. altere o valor da propriedade Caption para Soma;8. altere o valor da propriedade Position para poScreenCenter;9. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;10. clique no formulário, na posição onde ficará o 1o Label, conforme a tela modelo;11. altere o valor da propriedade Caption do Label1 para &1o Número;12. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;13. clique no formulário, na posição onde ficará o 2o Label, conforme a tela modelo;14. altere o valor da propriedade Caption do Label2 para &2o Número;15. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;16. clique no formulário, na posição onde ficará o 3o Label, conforme a tela modelo;17. altere o valor da propriedade Caption do Label3 para Resultado;18. usando o mesmo processo de seleção e colagem dos Label’s, inclua abaixo de cada Label um Edit;19. altere o valor da propriedade Text dos 3 Edit’s para vazio (apague o conteúdo);20. entre os 2 primeiros Edit (Edit1 e Edit2), inclua o 4o Label, conforme modelo;21. altere o valor da propriedade Caption do Label4 para +;22. entre os 2 últimos Edit (Edit2 e Edit3), inclua o 5o Label , conforme modelo;23. altere o valor da propriedade Caption do Label4 para =;24. selecione o 3o Edit (Edit3), clicando sobre ele;25. altere o valor da propriedade ReadOnly do Edit3 para True;26. altere o valor da propriedade TabStop do Edit3 para False;27. selecione o 1o Label (Label1), clicando sobre ele;28. altere o valor da propriedade FocusControl do Label1 para Edit1, selecionando na lista;29. selecione o 2o Label (Label2), clicando sobre ele;30. altere o valor da propriedade FocusControl do Label2 para Edit2, selecionando na lista;31. selecione na Paleta de Componentes Standard o Button, clicando sobre ele;32. clique no formulário, na posição onde será incluído o 1o Button, conforme modelo;33. altere o valor da propriedade Caption do Button1 para &Calcular;34. altere o valor da propriedade Default do Button1 para True;35. selecione na Paleta de Componentes Standard o Button, clicando sobre ele;36. clique no formulário, na posição onde será incluído o 2o Button, conforme modelo;37. altere o valor da propriedade Caption do Button2 para &Sair;
Marcos Humberto Vieira Página 29 de 36
DelphiRoteiro 1 - Soma
Delphi 3
38. altere o valor da propriedade Cancel do Button2 para True;
· codificando os eventos
39. selecione o 1o Button (Button1), clicando sobre ele;40. no Object Inspector, clique na aba Events;41. na coluna à direita do evento OnClick, dê um duplo clique;42. digite as seguintes linhas na janela de código:
procedure TForm1.Button1Click(Sender: TObject);var n1, n2, soma: real;begin
{verifica se primeiro número foi informado} if Edit1.Text = '' then begin ShowMessage('Informe o 1º número'); Edit1.SetFocus; Exit; end;
{verifica se segundo número foi informado} if Edit2.Text = '' then begin ShowMessage('Informe o 2º número'); Edit2.SetFocus; Exit; end;
{converte os valores fornecidos} n1 := StrToFloat(Edit1.Text); n2 := StrToFloat(Edit2.Text);
{faz a soma} soma := n1 + n2;
{apresenta o resultado na tela} Edit3.Text := FloatToStr(soma);end;
43. no Object Inspector, selecione o componente Button2, abrindo a lista;44. na coluna à direita do evento OnClick, dê um duplo clique;45. digite a linha na janela de código:
procedure TForm1.Button2Click(Sender: TObject);begin Close;end;
46. salve o projeto, clicando no ícone Save All na SpeedBar;47. escolha/crie um diretório onde salvar seu projeto: Form’s (*.DFM), Unit’s (*.PAS) e Índice do Projeto (*.DPR).
É aconselhável que cada projeto esteja num diretório (pasta) diferente dos demais projetos;48. execute e teste o seu projeto, clicando no ícone Run na SpeedBar.
1 Label
2 Edit
3 Button
Marcos Humberto Vieira Página 30 de 36
Delphi 3
4 Save All
5 Run
Marcos Humberto Vieira Página 31 de 36
Delphi 3
· modelo
· construindo a interface
1. inicialize o Delphi;2. no menu File, escolha New Application;3. acesse a janela de propriedades do Form (Object Inspector), pressionando F11 ou escolhendo Object
Inspector no menu View;4. dê um duplo clique no + à frente da propriedade BorderIcons;5. altere o valor da sub-propriedade biMaximize para False;6. altere o valor da propriedade BorderStyle para bsSingle;7. altere o valor da propriedade Caption para Soma;8. altere o valor da propriedade Position para poScreenCenter;9. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;10. clique no formulário, na posição onde ficará o 1o Label, conforme a tela modelo;11. altere o valor da propriedade Caption do Label1 para &1o Número;12. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;13. clique no formulário, na posição onde ficará o 2o Label, conforme a tela modelo;14. altere o valor da propriedade Caption do Label2 para &2o Número;15. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;16. clique no formulário, na posição onde ficará o 3o Label, conforme a tela modelo;17. altere o valor da propriedade Caption do Label3 para Resultado;18. usando o mesmo processo de seleção e colagem dos Label’s, inclua abaixo de cada Label um Edit;19. altere o valor da propriedade Text dos 3 Edit’s para vazio (apague o conteúdo);20. entre os 2 primeiros Edit (Edit1 e Edit2), inclua o 4o Label, conforme modelo;21. altere o valor da propriedade Caption do Label4 para +;22. entre os 2 últimos Edit (Edit2 e Edit3), inclua o 5o Label , conforme modelo;23. altere o valor da propriedade Caption do Label4 para =;24. selecione o 3o Edit (Edit3), clicando sobre ele;25. altere o valor da propriedade ReadOnly do Edit3 para True;26. altere o valor da propriedade TabStop do Edit3 para False;27. selecione o 1o Label (Label1), clicando sobre ele;28. altere o valor da propriedade FocusControl do Label1 para Edit1, selecionando na lista;29. selecione o 2o Label (Label2), clicando sobre ele;30. altere o valor da propriedade FocusControl do Label2 para Edit2, selecionando na lista;31. selecione na Paleta de Componentes Standard o Button, clicando sobre ele;32. clique no formulário, na posição onde será incluído o 1o Button, conforme modelo;33. altere o valor da propriedade Caption do Button1 para &Sair;34. altere o valor da propriedade Cancel do Button1 para True;
· codificando os eventos
35. selecione o 1o Button (Button1), clicando sobre ele;Marcos Humberto Vieira Página 32 de 36
DelphiRoteiro 2 - Soma
Delphi 3
36. no Object Inspector, clique na aba Events;37. na coluna à direita do evento OnClick, dê um duplo clique;38. digite a linha na janela de código:
procedure TForm1.Button1Click(Sender: TObject);begin Close;end;
39. no Object Inspector, selecione o componente Edit1, abrindo a lista;40. na coluna à direita do evento OnChange, dê um duplo clique;41. digite as seguintes linhas na janela de código:
procedure TForm1.Edit1Change(Sender: TObject);var n1, n2, soma: real;begin
{obtem o primeiro número} if Edit1.Text <> '' then n1 := StrToFloat(Edit1.Text) else n1 := 0;
{obtem o segundo número} if Edit2.Text <> '' then n2 := StrToFloat(Edit2.Text) else n2 := 0;
{faz a soma} soma := n1 + n2;
{apresenta o resultado} Edit3.Text := FloatToStr(soma);end;
42. no Object Inspector, selecione o componente Edit2, abrindo a lista;43. na coluna à direita do evento OnChange, selecione Edit1Change na lista;44. salve o projeto, clicando no ícone Save All na SpeedBar;45. escolha/crie um diretório onde salvar seu projeto: Form’s (*.DFM), Unit’s (*.PAS) e Índice do Projeto (*.DPR).
É aconselhável que cada projeto esteja num diretório (pasta) diferente dos demais projetos;46. execute e teste o seu projeto, clicando no ícone Run na SpeedBar.
1 Label
2 Edit
3 Button
4 Save All
5 Run
Marcos Humberto Vieira Página 33 de 36
Delphi 3
· modelo
· construindo a interface
1. inicialize o Delphi;2. no menu File, escolha New Application;3. acesse a janela de propriedades do Form (Object Inspector), pressionando F11 ou escolhendo Object
Inspector no menu View;4. dê um duplo clique no + à frente da propriedade BorderIcons;5. altere o valor da sub-propriedade biMaximize para False;6. altere o valor da propriedade BorderStyle para bsSingle;7. altere o valor da propriedade Caption para Calculadora;8. dê um duplo clique no + à frente da propriedade Font;9. altere o valor da sub-propriedade Name para Symbol, selecionando na lista;10. altere o valor da sub-propriedade Size para 16;11. altere o valor da propriedade Position para poScreenCenter;12. selecione na Paleta de Componentes Standard o Edit, clicando sobre ele;13. clique no formulário, na posição onde ficará o 1o Edit, conforme a tela modelo;14. selecione na Paleta de Componentes Standard o Edit, clicando sobre ele;15. clique no formulário, na posição onde ficará o 2o Edit, conforme modelo;16. selecione na Paleta de Componentes Standard o Edit, clicando sobre ele;17. clique no formulário, na posição onde ficará o 3o Edit, conforme modelo;18. altere o valor da propriedade Text dos 3 Edit’s para vazio (apague o conteúdo);19. selecione o 3o Edit (Edit3), clicando sobre ele;20. altere o valor da propriedade ReadOnly do Edit3 para True;21. altere o valor da propriedade TabStop do Edit3 para False;22. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;23. clique no formulário, entre os 2 primeiros Edit (Edit1 e Edit2), para incluir o 1o Label, conforme modelo;24. altere o valor da propriedade Alignment do Label1 para taCenter;25. altere o valor da propriedade AutoSize do Label1 para False;26. altere o valor da propriedade Caption do Label1 para vazio (apague-o);27. selecione na Paleta de Componentes Standard o Label, clicando sobre ele;28. clique no formulário, entre os 2 últimos Edit (Edit2 e Edit3), para incluir o 2o Label, conforme modelo;29. altere o valor da propriedade Alignment do Label2 para taCenter;30. altere o valor da propriedade AutoSize do Label2 para False;31. altere o valor da propriedade Caption do Label2 para =;32. selecione na Paleta de Componentes Standard o Button, clicando sobre ele;
Marcos Humberto Vieira Página 34 de 36
DelphiRoteiro 3 - Calculadora
Delphi 3
33. clique no formulário, na posição onde será incluído o 1o Button, conforme modelo;34. repita os passos 32 e 33 para incluir mais 6 Button’s, conforme modelo;35. altere a propriedade Caption dos 7 Button’s para os símbolos das operações, conforme modelo. Use o mapa
de caracteres do Windows (CharMap) para obter os símbolos;36. selecione na Paleta de Componentes Standard o Button, clicando sobre ele;37. clique no formulário, na posição onde será incluído o 8o Button, conforme modelo;38. altere o valor da propriedade Caption do Button8 para &Sair;39. altere o valor da propriedade Cancel do Button8 para True;
· codificando os eventos
40. selecione o 8o Button (Button8), clicando sobre ele;41. no Object Inspector, clique na aba Events;42. na coluna à direita do evento OnClick, dê um duplo clique;43. digite a linha na janela de código:
procedure TForm1.Button8Click(Sender: TObject);begin Close;end;
44. no Object Inspector, selecione o formulário (Form1), abrindo a lista;45. na coluna à direita do evento OnCloseQuery, dê um duplo clique;46. digite as seguintes linhas na janela de código:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);begin if MessageDlg('Encerrar', mtConfirmation, [mbYes, mbNo], 0) = mrNo then CanClose := False;end;
47. no Object Inspector, selecione o componente Button1, abrindo a lista;48. na coluna à direita do evento OnClick, dê um duplo clique;49. digite as seguintes linhas na janela de código:
procedure TForm1.Button1Click(Sender: TObject);var n1, n2, res : real;begin
{verifica primeiro número} if Edit1.Text = '' then begin MessageDlg('Forneça o 1° número', mtWarning, [mbOk],0); Edit1.SetFocus; Exit; end;
{verifica segundo número} if Edit2.Text = '' then begin MessageDlg('Forneça o 2° número', mtWarning, [mbOk],0); Edit2.SetFocus; Exit; end;
{apresenta operação realizada} Label1.Caption := (Sender as TButton).Caption;
{converte valores fornecidos} n1 := StrToFloat(Edit1.Text); n2 := StrToFloat(Edit2.Text);
{verifica qual botão foi pressionado} if Sender = Button1 then res := n1 + n2 else if Sender = Button2 then res := n1 - n2 else if Sender = Button3 then res := n1 * n2
Marcos Humberto Vieira Página 35 de 36
Delphi 3
else if Sender = Button4 then res := n1 / n2 else if Sender = Button5 then res := power(n1, n2) else if Sender = Button6 then res := power(n2, 1 / n1) else if Sender = Button7 then res := n1 / 100 * n2;
{apresenta resultado} Edit3.Text := FloatToStr(res);end;
50. acrescente a Unit Math na lista de unidades usadas pela Unit1, no início da janela de código:
uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Math;
51. no Object Inspector, selecione o componente Button2, abrindo a lista;52. na coluna à direita do evento OnClick, selecione Button1Click na lista;53. repita os passos 51 e 52 para os componentes Button1, Button2, Button3, Button4, Button5, Button6 e
Button7;54. salve o projeto, clicando no ícone Save All na SpeedBar;55. escolha/crie um diretório onde salvar seu projeto: Form’s (*.DFM), Unit’s (*.PAS) e Índice do Projeto (*.DPR).
É aconselhável que cada projeto esteja num diretório (pasta) diferente dos demais projetos;56. execute e teste o seu projeto, clicando no ícone Run na SpeedBar.
1 Label
2 Edit
3 Button
4 Save All
5 Run
Marcos Humberto Vieira Página 36 de 36