Buscar

Apostila Delphi

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 38 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

SUMÁRIO 
 
Introdução 
O que é uma Linguagem de Programação Visual 
Características das Linguagens de Programação Visual 
Tipos de Linguagens Visuais 
O Ambiente DELPHI 7.0 
Janela FORM 
Janela OBJECT INSPECTOR 
Janela CODE EDITOR 
Janela MAIN 
Menu Principal 
Projeto 
Tipos de Dados 
Tipos de Dados NUMÉRICOS INTEIROS 
Tipos de dados NUMÉRICOS REAIS e MOEDA 
Tipos de dados BOOLEANOS 
Tipos de dados ALFANUMÉRICOS 
Biblioteca de Classes 
Paleta de Componentes 
TApplication 
TScreen 
TPrinter 
Componentes 
Paleta STANDARD 
Paleta ADDITIONAL 
Paleta WIN32 
Paleta System 
Paleta Data Access 
Paleta Data Controls 
Paleta DBE 
Paleta ADO 
A Paleta DIALOGS 
Propriedades 
Métodos 
Eventos 
Exceções 
Try ... Except 
On ... Do 
Tipos de Exceção 
Try ... Finally 
 
INTRODUÇÃO 
 
Este curso tem por objetivo apresentar uma linguagem de programação visual 
que tenha como base a programação orientada a objetos e a programação orientada 
a eventos. 
 
Para cumprir este objetivo foi selecionada uma ferramenta que tenha estas 
características. A ferramenta selecionada foi o DELPHI. O DELPHI é uma linguagem 
de programação visual desenvolvida pela empresa Borland, baseada na linguagem 
de implementação denominada Object Pascal. 
 
Neste curso será estudada a versão 7.0 da linguagem, por se tratar de uma 
versão totalmente compatível com o Windows2000, 2003 e XP. 
Esperamos que ao final deste curso você tenha condições de desenvolver 
aplicativos utilizando tal linguagem, de modo a aproveitar os seus principais 
recursos. 
 
Bom Curso! 
 
O QUE É UMA LINGUAGEM DE PROGRAMAÇÃO VISUAL 
 
As linguagens de programação visual, ou ferramentas visuais, são 
linguagens desenvolvidas para ambientes gráficos. Estas linguagens possuem a 
chamada sintaxe visual, pois incorporam figuras, formulários, animações, diagramas 
ou ícones para facilitar e agilizar o desenvolvimento dos programas. 
 
As linguagens de programação visual possuem um ambiente visual baseado 
em um conjunto de ferramentas e uma interface para acessar a estas ferramentas 
 
CARACTERÍSTICAS DAS LINGUAGENS DE PROGRAMAÇÃO 
VISUAL 
 
As principais características de uma Linguagem Visual são permitir que um 
sistema seja desenvolvido mais rapidamente do que numa linguagem tradicional e 
reduzir o tempo de manutenção. Isto ocorre em função dos seguintes aspectos: 
 a interface é montada através de componentes já disponíveis; 
 torna-se desnecessário escrever uma boa parte do código de um programa 
em função do mesmo ser gerado automaticamente; 
 possuem geradores ou editores de telas, relatórios, etiquetas, consultas, 
entre outros; 
 combinam recursos de análise orientada a objetos e a eventos com 
gerenciadores de banco de dados. 
 
TIPOS DE LINGUAGENS VISUAIS 
 
Algumas das principais linguagens de Programação Visual disponíveis no 
mercado são: 
 
Linguagem Visual Linguagem de Implementação 
Borland Delphi Object Pascal 
Microsoft Acces Acces Basic 
Java Java 
Visual Basic Visual Basic 
Visual C++ C++ 
O AMBIENTE DELPHI 7.0 
 
Neste ítem será estudado o IDE (Integrated Developer Environment – Ambiente 
Integrado de Desenvolvimento) do DELPHI. 
 
O DELPHI possui um conjunto de ferramentas que permítem facilitar e agilizar 
a construção de programas, permitindo uma melhor interação entre o programador e 
o computador. Suas principais janelas são: 
 
 Janela FORM 
 Janela OBJECT INSPECTOR 
 Janela CODE EDITOR 
 Janela MAIN 
 
JANELA FORM 
 
O FORM é a tela onde o desenvolvedor constrói sua aplicação. A partir de um 
FORM é que se estabelece a interação USUÁRIO-COMPUTADOR, através de 
botões, rótulos e outros componentes, estabelecendo-se funções, métodos ou 
eventos que serão ativados. Os componentes são dispostos dentro da área útil do 
FORM. 
 
A Janela FORM: interface. 
 
 
Os quatro tipos de FORM são: 
 Normal: é o FORM padrão; 
 MDIForm: os FORMS do tipo MDI (Multiple Document Interface), podem 
conter outros FORMS do tipo MDIChild; 
 MDIChild: são FORMS que sempre estão subordinados a um FORM 
MDIForm; 
 StayOnTop: são FORMS que sempre ficam visíveis na tela. 
 
Para se abrir um FORM utilizam-se os comandos: Show ou ShowModal. Os 
FORMS tem um ModalResult associado que são dados pelos botões colocados nos 
mesmos. Este ModalResult permite tratar se o FORM foi fechado com OK, Cancel, 
Close, ... 
JANELA OBJECT INSPECTOR 
A janela OBJECT INSPECTOR contém propriedades e eventos dos 
componentes inseridos em um FORM, e do próprio FORM. É na janela Properties 
(Propriedades), por exemplo, que se estabelecem as características de cada 
componente, como nome, fonte, altura, largura, etc. Já na janela Events (Eventos) 
estabelecem-se ações a serem tomadas pelo componente a partir de um evento 
associado ao mouse, teclado, sistema operacional, etc. 
 
A Janela OBJECT INSPECTOR: propriedades e eventos 
JANELA CODE EDITOR 
A janela CODE EDITOR, ou editor de código, é onde se desenvolve o 
programa fonte. É neste editor que se encontra a estrutura sintática propriamente 
dita da Linguagem DELPHI. Cabe ressaltar, no entanto, que boa parte do código 
escrito é gerado pela própria linguagem. 
 
 
 
A Janela CODE EDITOR: código fonte da aplicação 
 
JANELA MAIN 
 
A janela MAIN, ou janela principal, controla o funcionamento do DELPHI. Esta 
janela pode ser dividida em três partes: 
 Menu Principal: contém as opções de utilização do DELPHI; 
 Botões Speed Bar: contém botões que agilizam determinadas funções do 
DELPHI; 
 Paleta de Componentes: contém os componentes que podem ser utilizados 
na construção do projeto. 
 
 
 
A Janela MAIN: dividida em três partes. 
 
Os Botões SpeedBar e a Paleta de Componentes serão detalhados à medida 
de sua utilização. 
MENU PRINCIPAL 
 
O menu principal contém as opções de utilização do DELPHI. O detalhamento 
destas opções será feito à medida de sua utilização: 
 File: permite a manipulação de arquivos do desenvolvedor (PAS, DPR, ...); 
 Edit: apresenta opções de edição; 
 Search: apresenta opções de pesquisa e localização; 
 View: permite verificar detalhes do projeto; 
 Project: permite adicionar ou remover partes em um projeto, bem como 
compilá-lo; 
 Run: apresenta opções de execução e depuração do projeto; 
 Component: permite a criação ou instalação de novos componentes no 
DELPHI; 
 Database: apresenta opções de uso de banco de dados; 
 Tools: permite configurar o ambiente de trabalho, bem com acessar 
ferramentas externas ao DELPHI; 
 Windows:permite navegar entre a janela Code Editor, Object Inspetor, 
TreeView e Form 
 Help: ajuda do DELPHI. 
 
 
 
 
Menu Principal Paleta de Componentes 
Botões Speed Bar 
PROJETO 
 
No DELPHI o “programa principal” tem extensão DPR. Um DPR é o código de 
programa, também denominado de projeto, a partir do qual o desenvolvedor 
construirá sua aplicação. É a partir deste projeto que será gerado o código 
executável (EXE). Grande parte do código, no entanto, fica armazenado em UNITs 
com extensão PAS, onde são desenvolvidos os formulários. 
 
O projeto pode ser visualizado através da opção do menu View | Units e em 
seguida escolher o arquivo project e clicar em OK. Sua estrutura aparece na janela 
Code Editor e pode-se verificar que é muito semelhante ao programa principal do 
antigo Turbo Pascal©. 
 
A implementação mínima de um projeto prevê, na grande maioria das 
situações, a inicialização da aplicação (comando Application.Initialize),o uso 
(cláusula Uses) e criação dos formulários (comando Application.CreateForm) 
utilizados na mesma e a execução do projeto (Application.Run). 
 
Ao projeto podem ser adicionadas ou retiradas bibliotecas (Units) através da 
opção Project do menu. 
 
 
Estrutura de um Projeto em DELPHI. 
 
 
 
 
 
 
 
 
 
 
 
 
 
program Project1; 
 
uses 
 Forms, 
 Unit1 in 'Unit1.pas' {Form1}; 
 
{$R *.RES} 
 
begin 
 Application.Initialize; 
 Application.CreateForm(TForm1, Form1); 
 Application.Run; 
end. 
 
TIPOS DE DADOS 
 
No DELPHI a definição de tipos de dados corretos para as variáveis é muito 
importante, pois além de permitirem a economia de memória, eles têm, em muitos 
casos, de ter compatibilidade com os seus respectivos tipos de dados do Windows©. 
 
Os principais tipos de dados do DELPHI são: 
 Numéricos 
Inteiros 
Reais 
Moeda 
 Alfanuméricos 
Caracter 
String 
 Lógicos 
Booleanos 
 
TIPOS DE DADOS NUMÉRICOS INTEIROS 
 
Os principais tipos de dados numéricos inteiros do DELPHI estão definidos na 
tabela abaixo: 
 
Tipo Tamanho 
(em bytes) 
Domínio 
Byte 1 0..255 
ShortInt 1 -127..128 
Word 2 0..65535 
SmallInt 2 -32768..32768 
Cardinal 4 0..2147483647 
Integer 4 -2147483648..2147483647 
Longint 4 -2147483648..2147483647 
Tipos de Dados NUMÉRICOS INTEIROS 
TIPOS DE DADOS NUMÉRICOS REAIS E MOEDA 
 
Os principais tipos de dados numéricos reais e moeda do DELPHI estão 
definidos na tabela abaixo: 
 
Tipo Tamanho 
(em bytes) 
Domínio 
Single 4 1.5 * 10-45 .. 3.4 * 1038 
 Real 6 2.9 * 10-39 .. 1.7 * 1039 
Double 8 5.0 * 10-324 .. 1.7 * 10308 
Extended 10 3.4 * 10-4932 .. 1.1 * 104392 
Comp# 8 -263 .. 262 
Currency 
Tipos de Dados NUMÉRICOS REAIS e MOEDA 
 
O tipo Currency é o tipo MOEDA. Ele tem precisão de quatro casas decimais e 
é compatível com os bancos de dados que representam dinheiro. 
TIPOS DE DADOS BOOLEANOS 
 
Os principais tipos de dados lógicos do DELPHI estão definidos na tabela 
abaixo: 
 
Tipo Tamanho 
(em bytes) 
Armazenamento 
Boolean 1 tamanho de um byte 
ByteBool 1 tamanho de um byte 
Bool 2 tamanho de uma palavra 
WordBool 2 tamanho de uma palavra 
LongBool 4 tamanho de uma palavra dupla 
 
#
 O tipo COMP é na verdade um inteiro de 64 bits, mas é implementado como um 
real 
Tipos de Dados BOOLEANOS 
 
A existência de diversos tipos lógicos no DELPHI que armazenam a mesma 
coisa (TRUE ou FALSE) dá-se pela necessidade de compatibilização com os tipos 
do Windows©. 
 
TIPOS DE DADOS ALFANUMÉRICOS 
 
Os principais tipos de dados alfanuméricos do tipo caracter do DELPHI estão 
definidos na tabela abaixo: 
 
Tipo Tamanho 
(em bytes) 
Armazenamento 
Char 1 1 caracter ANSI 
AnsiChar 1 1 caracter ANSI 
WideChar 2 1 caracter Unicode 
Tipos de Dados CARACTER 
 
Os principais tipos de dados alfanuméricos do tipo string do DELPHI estão 
definidos na tabela abaixo: 
 
Tipo Tamanho 
(em bytes) 
Armazenamento 
ShortString 255 ANSIChar 
AnsiString até 3 Gb ANSIChar 
String 255 ou até 3 Gb ANSIChar 
WideString até 1,5 Gb WideChar 
Tipos de Dados STRING 
 
No DELPHI 7.0 o tipo de dados String tem funcionamento idêntico ao 
AnsiString, que é baseado em ponteiros 
BIBLIOTECA DE CLASSES 
 
Por ser uma linguagem de programação orientada a objetos o DELPHI possui 
uma biblioteca de classes denominada de VCL (Visual Component Library), para 
auxiliar na construção de programas. 
A biblioteca de classes do DELPHI pode ser visualizada no Browser (no menu 
principal acesse View - Browser). 
No DELPHI existem as classes visíveis e as não visíveis. 
 
CLASSES VISÍVEIS 
As classes visíveis são aquelas que podem ser manipuladas através da paleta 
de componentes, ou seja, são os próprios componentes 
 
CLASSES NÃO-VISÍVEIS 
As classes de componentes não visíveis oferecem controles especializados 
que não são possíveis ou necessários através da interface visual. As classes não 
visíveis mais comuns são a TApplication, a TScreen e a TPrinter. 
 
PALETA DE COMPONENTES 
 
A paleta de componentes é a biblioteca de classes que fornece recursos para o 
desenvolvimento visual em DELPHI. As classes da VCL representadas na paleta de 
componentes estão separadas por tipos: 
 
 ActiveX 
 Additional 
 ADO components 
 BDE components 
 COM+ components 
 Common Controls components (CLX somente) 
 Data Access 
 Data Controls 
 DataSnap 
 dbExpress 
 Decision Cube 
 Samples 
 Servers 
 Standard 
 System 
 WebServices 
 WebSnap 
 Win 3.1 
 Win32 
 
Os componentes disponíveis na VCL podem ser divididas entre os visuais e os 
não-visuais. 
TAPPLICATION 
 
Quando se inicia um projeto em DELPHI, automaticamente é criada uma 
variável Application que é do tipo TApplication. Esta classe permite a interação de 
sua aplicação com o Windows. 
 
A atribuição de valores às propriedades do TApplication pode ser feita apenas 
em tempo de execução, ou durante o desenvolvimento do projeto na opção do menu 
Project - Options. 
 
Os principais métodos da classe TApplication são: 
Nome Descrição 
Run() faz com que a aplicação seja executada. Este comando é 
colocado automaticamente no código fonte do projeto (veja 
em View - Project Source). 
Terminate() encerra a aplicação. 
HelpCommand
() 
carrega o arquivo de help da aplicação. 
 
Algumas das principais propriedades da classe TApplication são: 
Nome Descrição 
MainForm contém o form principal da aplicação; 
Title contém o título da aplicação quando a mesma está 
minimizada; 
HelpFile armazena o nome do arquivo de Help da aplicação; 
Icon contém o ícone que representa a aplicação. 
 
TSCREEN 
 
Quando se inicia um projeto em DELPHI, automaticamente é criada uma 
variável Screen que é do tipo TScreen. Esta classe contém as características da tela 
na qual a aplicação está rodando. 
 
Algumas das principais propriedades da classe TScreen são: 
Nome Descrição 
Cursor contém o cursor que está em uso; 
Cursors contém a lista dos cursores disponíveis para a aplicação; 
Fonts contém a lista de fontes disponíveis para a aplicação; 
Forms contém a lista de forms da aplicação; 
Height contém a altura da tela (em pixels); 
Width contém a largura da tela (em pixels). 
 
TPRINTER 
 
Quando se inicia um projeto em DELPHI, automaticamente é criada uma 
variável Printer que é do tipo TPrinter. Esta classe contém as características da 
impressora padrão que está sendo utilizada pelo Windows, além de permitir a 
impressão. 
 
Os principais métodos da classe TPrinter são: 
Nome Descrição 
BeginDoc() inicia um processo de impressão. 
EndDoc() finaliza um processo de impressão. 
Abort() aborta o processo de impressão. 
NewPage() inicia a impressão em uma nova página. 
 
Algumas das principais propriedades da classe TPrinter são: 
Nome Descrição 
Printers contém a lista de impressoras instaladas no Windows. 
PrinterIndex contém o índice da impressora ativada. 
Orientation contém a orientação do papel. 
PageHeight contém a altura da página de impressão. 
PageWidth contém a largura da página de impressão. 
PageNumber contém o número da página que está sendo impressa. 
Title contém o título da página impressa. 
 
Para a impressão de dados utilizando o TPrinter é necessário utilizar a classe 
TCanvas. 
 
COMPONENTES 
 
COMPONENTES VISUAIS 
Os componentes visuais podem tersua forma e tamanho alteradas no 
formulário (Form), além das propriedades e eventos no Object Inspector. Eles 
aparecem durante a execução do aplicativo exatamente como foram definidos 
durante o projeto. 
 
COMPONENTES NÃO-VISUAIS 
Os componentes não visuais ficam apenas como a representação de um ícone 
no formulário (Form), mas suas propriedades e eventos podem ser alterados no 
Object Inspector. Eles não aparecem no formulário durante a execução do aplicativo, 
podendo ser ativados por comandos específicos (por exemplo, podemos citar a 
caixa de diálogo abrir arquivo). 
 
PALETA STANDARD 
 
A paleta Standard contém 14 componentes mais comuns para a construção de 
aplicações. 
 
 
Paleta Standard: componentes mais comuns 
Os componentes desta paleta são: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Abre uma caixa de diálogo que mostra uma lista dos 
Frames incluídos no projeto corrente 
 
 
Cria uma barra de Menu no seu Form. Para acessar os 
eventos deste item em um Menu principal. Adicione um 
componente MainMenu no Form e de um duplo clique 
para abrir o Menu Designer 
 
Cria menus flutuantes que aparecerá quando o usuário 
clicar com o botão direito. Para acessar os eventos deste 
item, adicione o componente PopupMenu no Form e de 
duplo clique nele para abrir o Menu Designer. 
 
. 
Exibe o texto que o usuário não poderá selecionar ou 
manipular, tais como pequenos textos ou rótulos 
controlados. 
 
 
Exibe uma área de edição onde o usuário pode entrar ou 
modificar uma simples linha de texto 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Exibe uma área de edição onde o usuário poderá entrar 
ou modificar múltiplas linhas de texto 
 
Cria um botão onde o usuário escolhe as ações iniciais 
Apresenta umas opções que o usuário poderá escolher 
entre sim ou não, verdadeiro ou falso. Use o Check Box 
para exibir um grupo de escolher que não são 
mutuamente exclusivos. O usuário pode selecionar mais 
do que um Check Box no grupo 
 
Apresenta umas opções que o usuário poderá escolher 
entre sim/não ou verdadeiro/falso. Use o RadioButton 
para exibir um grupo de escolhas que são mutuamente 
exclusivos. Usuários podem selecionar somente um 
radio button no grupo 
Exibe uma lista rolante de escolhas. 
Exibe uma lista de escolhas em uma caixa de lista 
combinada e caixa de edição. Os usuários podem entrar 
com os dados no EditBox ou selecionar um item no List 
Box. 
 
Fornece um caminho para mudar a área da visão de um 
List ou Form. Você pode também usar a barra de rolagem 
para mover através dos valores por incrementos 
Fornece um recipiente para agrupar os componentes em 
um Form 
 
Cria painéis que pode conter outros componentes em um 
Form. Você pode usar painéis para criar barra de 
ferramentas e linhas de status 
 
Cria uma caixa de grupo que contém botões radio em um 
form 
 
 
 
 
 
Os componentes são manipulados através de suas propriedades, métodos e 
eventos. 
 
PALETA ADDITIONAL 
A paleta Additional tem 25 componentes, também de uso comum, mas com 
algumas funções mais especializadas. 
 
 
Paleta Additional: mais componentes de uso comum 
 
Os componentes desta paleta são: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Um botão que pode exibir um bitmap 
 
Fornece um botão que exibe uma figura, mas sem um 
Caption. Speed Butoons pode ser agrupado com um 
Panel para criar uma ferramenta paleta 
Permite o usuário entrar e editar dados similares a um 
componente edit, mas fornece um meio de formato 
específico, assim como um código postal ou número de 
telefone. MaskEdit compartilha propriedades de outro 
controle Text 
 
Cria um grid que você pode usar para exibir dados strings 
em colunas e linhas. StringGrid é um grupo de 
características de um componente DrawGrid 
 
 
Cria uma Grid que você pode usar para exibir dados nas 
colunas e linhas. 
 
 
Exibe um Bitmap, ícone ou Metarquivo 
Cria coleções de ações que centraliza suas respostas de 
aplicações para usar ações 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Desenha figuras geométricas incluindo uma elipse, um 
círculo, um retângulo, um triângulo arredondado ou 
triângulo arredondado. 
 
Cria linhas ou caixas com três dimensões, aparência 
esculpida 
Cria um recipiente que automaticamente exibe barra de 
rolagens quando necessário 
 
Exibe uma lista de rolagem similar ao ListBox, exceto que 
cada item tem uma caixa de checagem próxima a ele. 
 
Adiciona um divisor no Form entre 2 controles alinhados 
para permitir redimensionar o controle em tempo de 
execução através de um clique arrastando a linha 
divisória 
 
Um componente texto não editável como Label, exceto 
que ele tenha sua própria janela a qual é útil quando o 
acelerador da chave do componente quase empresta um 
controle de janela. Use o Static teste para fornecer ao 
usuário um Feedback em estado corrente da aplicação 
Um gerenciador de layout para o componente ToolBar. 
Use a barra de controle como uma âncora conveniente 
para o TollBar 
Um componente que captura eventos da aplicação em 
níveis. Use como um caminho para apontar a um evento 
da aplicação usando o VÁ ou associar um evento com 
cada Form na aplicação 
E 
 
Uma simples controle de coluna dupla para representar o 
nome/valor unindo em um objeto TString 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Um componete Edit com um Label integrado 
Um Combo Box que deixa o usuário selecionar a cor 
Um controlador de dados gráficos 
 
 
Uma caixa de dialogo que gerência e exibe todas as 
configurações e ações padrões contidas na aplicação. 
Com o Action Manager você pode editar menus de 
configurações e TollBars 
 
Uma barra de menu principal contém menus visíveis e 
itens Submenus 
Um toolbar que exibe ações como botões ToolBar 
 
Uma caixa de diálogo que permite usuários configurarem 
seus menus e barras de ferramentas a qual estão usando 
o editor Action Manager 
Use XPColorMap para aplicar uma visão única e 
experimentar uma ação individual dos componentes 
Bands 
 
 
Use o StandarColorMap para aplicar uma visão única e 
experimentar uma ação individual dos componentes 
Bands 
 
Uma caixa de texto na qual você pode entrar com 
números ou letras que aparecem com um dígito ou exibe 
LCD 
Use o TwilightColorMap para aplicar uma única visão e 
experimentar uma ação individual dos componentes 
Bands 
 
 
 
 
 
 
 
 
 
 
 
Os componentes são manipulados através de suas propriedades, métodos e 
eventos. 
PALETA WIN32 
 
A paleta Win32 contém 20 componentes para criar aplicações que tenham a 
aparência do Windows. 
 
 
Paleta Win32: aplicativos com a aparência do Windows
©
. 
 
Os componentes desta paleta são: 
 
 
 
 
 
 
 
 
 
 
 
 
 
Divide um conjunto de arquivos, este componente fornece 
um grupo de exclusividade mútua de estilos. 
Um componente não visual que repete um ou mais vezes 
um evento depois de um intervalo de tempo. Você 
escreve o código que você quer que ocorra em um tempo 
específico dentro do evento OnTimer do componente 
Especifica uma área retangular em um Form que forneceum limite para aplicação de uma pintura 
Uma página usada para fazer multi-páginas de caixa de 
diálogos. Use este componente para definir múltiplas 
páginas lógicas ou seções de informações dentro de 
algumas janelas 
Um ImageList é uma coleção de algumas pequenas 
imagens, cada qual pode ser referenciada por um índice. 
ImageList são usados para gerenciar eficazmente longas 
seções de ícones ou Bitmaps. Todas as imagens na lista 
de imagem são conteúdos simples, longo Bitmap na 
janela de dispositivo de formato. Um List Image pode 
listar também Bitmap monocromático que contém 
máscaras usadas para desenhar imagens transparentes 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Por padrão, RichText editor suporta propriedades de 
fonts, tão como formato, tamanho, cores, negrito, itálico. 
Ele também suporta outros formatos, tão como 
alinhamento, numeração e arrasto automático e apaga o 
texto selecionado. 
 
Uma barra que define a extensão, o ajustamento e um 
indicador que ambos aparecerão em um valor corrente 
que controle e fornece um significado para mudança de 
valores. Você pode apostar uma barra de orientação 
como vertical ou horizontal, define o incremento da barra, 
 
Uma barra retangular que preenche da esquerda para 
direita fornecendo Feedback visual para o usuário sobre o 
progresso de uma longa operação ou processo 
background. 
 
Levantar e abaixar a seta para incrementar e 
decrementar valores 
 
. 
Liga uma tecla de atalho em algum componente 
. 
Uma janela animada que controla uma janela que exibe 
clipe AVI, uma série de Frames Bitmaps como filme. 
Exibe uma caixa de lista que entra data ou tempo. O 
usuário pode selecionar a data do calendário ou 
selecionar datas ou tempos na barra de rolagem para 
cima ou para baixo. 
Exibe uma caixa de lista que entra data ou tempo. O 
usuário pode selecionar a data do calendário ou 
selecionar datas ou tempos na barra de rolagem para 
cima ou para baixo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Permite você controlar e exibir um conjunto de objetos 
baseado em seu relacionamento de lógica hierárquica. O 
controle inclui botões que permite o esboço ser 
expandido. Use o componente TreeView para exibir um 
relacionamento entre o conjunto de container e outros 
elementos hierárquicos. 
 
Exibe uma lista de itens ou dados em uma variedade de 
caminhos 
 
 
 
 
Exibe uma coluna abaixo do texto ou números. Você 
pode dividir o controle também em duas ou mais partes 
para fornecer cabeçalhos para múltiplas colunas. Você 
pode alinhar os elementos para esquerda, direita ou 
centralizada. Você pode configurar cada parte para 
comportar-se como um Command Button para especificar 
funções quando clicadas. 
Exibe uma área para mostrar os estados dos botões da 
tela 
 
Gerência os ToolButtons e outros controles, alinhando 
eles em linhas e ajustando automaticamente seus 
tamanhos e posições. 
 
Exibe uma coleção de controladores de janelas (objeto 
Coolband) que se movem dentro, bandas ajustáveis. O 
usuário posiciona os controles por movimentos da 
esquerda de cada faixa. 
Contém outros objetos em uma área de cliente que pode 
rolar tanto verticalmente ou horizontalmente. Usuário rola 
o conteúdo de um PageScroller usando as setas em um 
dos dois mas de preferência usar um ScrollBar 
 
 
 
 
 
Os componentes são manipulados através de suas propriedades, métodos e 
eventos. 
 
A PALETA SYSTEM 
 
A paleta Dialogs contém 8 componentes não visuais para a criação de caixas 
de diálogo padrão no Windows. 
 
 
 
Paleta Dialogs: caixas de diálogo prontas. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Exibe um conjunto de caracteres associados a imagens 
em uma lista Drop-Down ligado a um controle Edit 
Timer é um componente não visual que dispara em um 
tempo ou repete o evento até um intervalo especificado. 
Você escreve um código que você quer que ocorra em 
um tempo especificado dentro do componente Timer no 
evento onTimer. 
 
Expecifica uma área retangular sobre um form que 
fornece um limite para aplicação paint 
 
 
Exibe um painel de controle VCR para iniciar e gravar 
vídeo multimídia e arquivos de sons. 
Cria uma área de cliente OLE em um Form 
 
 Estabelece uma conexão cliente para aplicações 
servidoras DDE 
Especifica os dados do cliente DDE para transferência 
durante a conversão DDE 
 
 
 
 
 
 
 
 
 
A PALETA DATA ACCESS 
A paleta Dialogs contém 6 componentes não visuais 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Atua como uma ligação entre um componente DataSet e 
um componente data-aware tal como TDBgrid 
 
Executa um armazenamento cachê na memória de um 
DataSet. Cliente DataSets pode ser usado como arquivo 
local baseado em dados (Mybase) ou com dados vindos 
de outro DataSet usando um provedor DataSet. 
Escreve códigos em pacotes, pode ser enviados para 
clients e aplicados atualizações que serão recebidas do 
cliente. 
Converte um documento XML em um pacote de dados ou 
em um pacote de dados XML ou um dado empacotado 
XML em um documento XML com outra estrutura. 
Fornece um dado de um documento XML para um cliente 
DataSet ou corretor XML e resolve atualizações de que o 
client DataSet ou corretor atrás do documento de origem 
XML 
 
. 
Converte o dado de um provedor em um documento XML 
e aplica atualizações em um formulário de documento 
XML para um componente provedor 
. 
Estabelece uma conexão servidora para aplicações 
cliente DDE 
Especifica o servidor de dados DDE para transferência 
durante a conversão DDE 
 
A PALETA DATA CONTROLS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Use o data-aware grid para habilitar uma visualização e 
edição de dados em uma tabela similar a uma planilha 
eletrônica. Faça uso extensivo das propriedades TField 
(agrupa no editor Fields) para determinar visuabilidade de 
colunas, exibe formatos, ordenação, etc. 
 
Botões de navegação que move um ponteiro de registro 
para frente ou para trás na tabela. O navegador pode 
também inserir dados no DataSet, editar ou entrar em 
estado de navegação, inserir ou editar registros, e 
devolve um dado atualizado para exibição. 
 
 
Um label que exibe os valores dos campos em um 
registro corrente 
 
 
Caixa de texto que exibe ou edita um campo em um 
registro corrente 
Caixa de memorando que exibe ou edita textos longos 
em um registro corrente 
Exibe, corta, ou cola imagens Bitmap em um registro 
corrente 
 
ListBox exibe uma lista rolante de valores de uma coluna 
de uma tabela 
Combo box exibe ou edita uma lista de valores de uma 
coluna em uma tabela 
 
. 
Check box exibe ou edita campos de dados boleanos em 
um registro corrente 
 
v 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A PALETA BDE 
 
 
 
 
 
Devolve dados de uma tabela de banco de dados físico 
via o DBE e ele fornece um ou mais componentes data-
aware através de um componente DataSource. 
Convencionalmente, ele também envia dados recebidos 
de um componente de um banco de dados físico via BDE 
Botões RadioGroup exibe ou aponta valoresde colunas 
BLookupListBox é uma caixa de lista que deriva sua lista 
de exibição em lista de itens de cada campo Lookup 
definido por um DataSet ou uma origem secundária de 
dado, DataField, e chave. Em cada caso, um usuário é 
apresentado com uma lista restritiva de escolhas de cada 
valor campo. Onde um usuário seleciona uma lista de 
itens, um valor de campo correspondente é escolhinho 
em um DataSet 
DBLookupComboBox é um combo box que devolve uma 
lista Drop-Down de exibição de itens de cada campo 
lookup defino por um DataSet ou uma origem de dado 
secundário, datafield, e chave. Em cada caso, um usuário 
é apresentado como uma lista restrita de escolhas da 
qual um valor de campo valido. Onde um usuário 
seleciona uma lista de item, um campo valor de campo 
correspondente é alterado em um DataSet 
Um controle de edição de múltiplas linhas que pode exibir 
um Edit, um RichText, campo memo em um DataSet 
Um controle DBCtrlGrid exibe múltiplos campos em 
múltiplos registros em uma tabela de formato grid. Cada 
célula em um grid exibe múltiplos campos de dados 
Um construtor básico de blocos onde cria um TeeChart. 
Gráfico que usa o DBE 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Use a propriedade SQL para devolver dados de um 
database Table via DBE e armazenar um ou mais 
componentes data-aware através de um componente 
TDataSource. Convencionalmente, use a opção SQL 
para enviar dados de um componente para um banco de 
dados físico via DBE 
Habilita uma aplicação acessar um servidor 
StoredProcedures. Envie dados recebidos de um 
componente de banco de dados físico via DBE 
 
Cria uma conexão no banco de dados, especialmente um 
banco de dados remoto requisitando um nome do usuário 
e uma senha. 
Fornece um controle global sobre um grupo de 
componentes de banco de dados. Um padrão do 
componente TSession é automaticamente criado para 
cada aplicação de banco de dados. Você pode usar o 
componente TSession apenas se você criar uma 
aplicação de banco de dados multitarefa. Cada tarefa de 
um banco de dados requeira seu próprio componente 
Session 
 
Copia uma estrutura da tabela ou seus dados. Você pode 
usar para uma tabela inteira de um formato de banco de 
dados para um outro 
 
. 
Permite você atualizar a cached para somente de leitura 
em um DataSet. Por exemplo, você pode usar um 
componente TUpDateSQL como um “recipiente” de busca 
para mostrar um caminho de um atualização de base 
DataSets, essencialmente dando a você a habilidade 
para executar atualizações somente de leitura .Você 
associa um componente TUpdataSQL com um DataSet 
por agrupamento pela propriedade DataSets. O DataSet 
automaticamente usa o componente TUpdateSQL onde 
as atualizações são armazenadas. 
 
 
 
A PALETA ADO 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Devolve os dados em um campo DataSet aninhado e ele 
armazena em um controle data-aware através de um 
componente DataSource 
 
Cria uma conexão em um banco de dados ADO e fornece 
suporte para transações 
Lança um comando SQL diretamente contra um banco de 
ADO sem retornar um resultado 
Representa um dado de um ou mais tabelas em um 
banco de dados ADO, permitindo um componente data-
aware manipular estes dados por conexões com um 
componente DataSource. Este é quase um genérico 
controle DataSet ADO, e pode ser usado no lugar do 
ADOTable, ADOQuery, ADOStoreProc. 
Representa um dado de uma simples tabela de banco de 
dados via ADO e permite um componente data-aware 
manipular estes dados por conexão com um componente 
DataSource 
Use uma instrução SQL para enviar dados de uma tabela 
de banco de dados físico via ADO e permite um 
componente data-aware manipular estes dados por 
conexão com um componente DataSource. 
Use uma instrução SQL para enviar dados de uma tabela 
de banco de dados físico via ADO e permite um 
componente data-aware manipular estes dados por 
conexão com um componente DataSource 
 
Gerência a organização de dados onde um objeto 
RecordSet é passado de um processo ou máquina para 
outra. Use o TRDSConection quando construir aplicações 
multi-tier usando objetos(aplicações servidoras) 
 
A PALETA DIALOGS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Exibe uma janela padrão da caixa de diálogo abrir. O 
usuário pode especificar o nome do arquivo a ser aberto 
na caixa de diálogo 
Exibe uma janela padrão da caixa de diálogo salvar. O 
usuário pode especificar o nome do arquivo a ser salvo 
nesta caixa de diálogo 
 
Exibe uma caixa de diálogo para selecionar e abrir 
arquivos gráficos. Idêntico a caixa de dialogo Abrir 
Exibe uma caixa de diálogo para entrar com o nome do 
arquivo e salvar o arquivo de imagem. Idêntico a caixa de 
dialogo salvar 
Exibe uma caixa de janela padrão que permite o usuário 
especificar fonte, tamanho e estilo da informação; 
 
 
Exibe uma janela padrão de caixa de dialogo de cores. 
Exibe uma janela padrão de impressão que permite o 
usuário especificar a impressão, tal como configurar 
páginas e números de copias. 
Exibe uma janela padrão de configuração de impressora 
que permite o usuário mudar e configurar impressora. 
Exibe uma janela padrão de busca que permite o usuário 
especificar o caractere a ser procurado 
 
 
Exibe uma janela padrão de substituição que permite o 
usuário especificar cada caractere a ser procurado e 
substituição de caractere 
 
PROPRIEDADES 
As propriedades são os atributos da classe, ou seja, são as suas 
características. 
 
As propriedades mais comuns, presentes nos componentes do DELPHI são: 
Nome Descrição 
Align Determina o alinhamento de controle 
Caption Legenda do componente (com o &, indica atalho) 
Name Nome da instância do componente 
Left Posição esquerda 
Top Posição superior 
Height Altura do componente 
Width Largura do componente 
ComponentCo
unt 
O número de componentes possuídos 
Components Uma matriz de componentes possuídos 
Color Indica a cor do componente 
Font Indica a fonte (letra) a ser usada no componente 
Ctl3D Define a aparência 2D ou 3D do componente 
Enabled Indica se o componente está ativado ou não 
Visible Indica se o componente está visível ou não 
Hint String utilizada para dicas instantâneas 
ShowHint Mostra ou não as dicas instantâneas 
PopupMenu Menu que será mostrado com o click do botão direito do 
mouse 
TabOrder Define a ordem de tabulação do componente (tecla TAB) 
TabStop Indica se o componente será ponto de parada para a tecla 
TAB 
HelpContext Número utilizado para chamar o help sensível ao contexto 
Tag Contém um número inteiro, que pode ser a identificação do 
componente 
 
MÉTODOS 
 
Os métodos são as ações realizadas pela classe, ou seja, são as funções às 
quais estão associados um comportamento da classe. 
 
Os métodos mais comuns das classes do DELPHI são: 
Nome Descrição 
Create Cria uma nova instância do objeto 
Destroy Destrói a instância do objeto 
Show Torna o componente visível 
Hide Torna o componente invisível 
SetFocus Coloca o foco no componente 
Focused Determina se o componente está com o foco 
BringToFront Coloca o componente na frente dos demais 
SendToBack Coloca o componente atrás dos demais 
ScaleBy Gradua o componente em determinada escala 
SetBounds Muda a posição e o tamanho do componente 
 
EVENTOS 
 
Os eventos são blocosde comandos que associam a ocorrência de alguma 
atividade a uma ação a ser tomada. 
 
Uma linguagem de programação orientada a eventos não tem 
necessariamente um início ou final lógico, isto é, de acordo com uma seqüência de 
comandos, pois as ações só são realizadas a partir do instante que ocorre um 
evento. 
 
Um evento pode estar associado a: 
 Clique ou movimento do mouse; 
 Acionamento do teclado; 
 Operações sobre janelas (abrir, fechar, criar, redimensionar, mover,...); 
 Erros de execução; 
 Etc. 
 
O DELPHI possui mais de 130 eventos pré-definidos, que estão associados à 
ocorrência de ações, nas mais diversas classes. 
 
Alguns dos principais eventos do DELPHI são: 
Nome Descrição 
OnActivate Ocorre quando o programa ativa o objeto pela primeira vez, 
ou quando se retorna de um outro aplicativo. 
OnChange Ocorre quando muda o conteúdo de um objeto. 
OnClick Ocorre quando o usuário dá um clique no botão esquerdo do 
mouse. 
OnClose Ocorre quando o objeto é fechado. 
OnCreate Ocorre quando o objeto é criado. 
OnDblClick Ocorre quando é feito um duplo clique com o botão esquerdo 
do mouse. 
OnDeactivate Ocorre quando se sai do objeto. 
OnDestroy Ocorre quando se elimina um objeto. 
OnDragDrop Ocorre quando um objeto é arrastado para outro objeto e 
solto. 
OnDragOver Ocorre quando um objeto é arrastado para cima de outro 
objeto. 
OnDropDown Ocorre quando se abre um objeto ComboBox ou ListBox. 
OnEnter Ocorre quando o objeto recebe o foco. 
OnException Ocorre quando ocorre um erro de execução na aplicação. 
OnExit Ocorre quando o objeto perde o foco. 
OnHelp Ocorre quando é solicitado a abertura de um arquivo de 
ajuda. 
OnHide Ocorre quando o objeto passa a ser oculto. 
OnKeyDown Ocorre quando o usuário pressiona uma tecla, incluindo 
SHIFT, ALT e INSERT. 
OnKeyPress Ocorre quando o usuário pressiona uma tecla ASCII. 
OnKeyUp Ocorre quando o usuário solta uma tecla. 
OnMinimize Ocorre quando se minimiza uma janela. 
OnMouseDow
n 
Ocorre quando o usuário clica em um botão do mouse e o 
cursor é posicionado sobre a área clicada. 
OnMouseMov
e 
Ocorre quando o usuário move o cursor dentro da área 
selecionada. 
OnMouseUp Ocorre quando o usuário solta um botão do mouse. 
OnPopup Ocorre quando se ativa um menu popup com o botão direito 
do mouse. 
OnResize Ocorre quando se muda o tamanho do objeto. 
OnRestore Ocorre quando se restaura uma janela que foi minimizada. 
OnRun Ocorre quando uma aplicação inicia sua execução. 
OnShow Ocorre antes que o objeto se torne visível. 
OnTimer Ocorre em intervalos periódicos de tempo. 
 
EXCEÇÕES 
 
Exceções são erros que ocorrem durante a execução do programa. Existem 
diversos tipos de exceções, que podem ocorrer nas seguintes operações: 
 Alocação de memória; 
 Criação e utilização de objetos; 
 Cálculo de expressões matemáticas; 
 Manipulação de arquivos; 
 Utilização de recursos do sistema operacional. 
 
Algumas das principais características das exceções no DELPHI são: 
 A instância da exceção fornece informações sobre o tipo de problema 
ocorrido; 
 O usuário pode definir suas próprias exceções, utilizando a classe 
Exception; 
 Para forçar a execução de uma exceção utiliza-se a cláusula Raise; 
 Os tipos de exceção normalmente devem iniciar com a letra E. 
 Uma exceção gera um evento denominado OnException. 
 
As exceções podem ser tratadas através das instruções: 
 Try ... Except 
 Try ... Finally 
 
TRY ... EXCEPT 
 
O bloco try ... except é utilizado para definir um código de programa a ser 
executado no momento que ocorrer uma exceção. 
 
Sintaxe: 
try 
 { Bloco de comandos} 
except 
 {Bloco de comandos a ser executado quando ocorrer uma exceção} 
end; 
 
Exemplo: tratamento de uma divisão por zero. 
. 
Valor1 := StrToInt (Edit1.Text); 
Valor2 := StrToInt (Edit2.Text) 
try 
 Resultado := Valor1 div Valor2; 
except 
 ShowMessage (‘Divisão por Zero’); 
end; 
. 
 
No entanto, pode ocorrer mais de uma exceção dentro de um mesmo bloco. 
Neste caso é necessário utilizar o comando on ... do. 
 
ON ... DO 
 
O comando on ... do permite tratar mais de um tipo de exceção de um bloco 
try ... except. 
 
Sintaxe: 
On 
 {Tipo de exceção} 
Do 
 {Bloco de comandos da exceção} 
 
Exemplo: tratamento de uma divisão por zero e da digitação de um caractere 
em um campo que deveria ser numérico. 
. 
try 
 Valor1 := StrToInt (Edit1.Text); 
 Valor2 := StrToInt (Edit2.Text) 
 Resultado := Valor1 div Valor2; 
except 
 on EDivByZero do 
 ShowMessage (‘Divisão por Zero’); 
 on EInOutError do 
 ShowMessage (‘Os valores devem ser numéricos’); 
end; 
 
TIPOS DE EXCEÇÃO 
 
Os principais tipos de exceção da RTL (RunTime Library) do DELPHI, a serem 
tratadas nos blocos on ... do são: 
Nome Descrição 
EaccessViolati
on 
ocorre quando se tenta acessar uma região de memória 
inválida (ex: tentar atribuir valor a um ponteiro cujo conteúdo é 
nil). 
EconvertError ocorre quando se tenta converter um string em um valor 
numérico (ex: utilizar a função StrToInt em uma letra). 
EdivByZero ocorre na divisão de um número por zero. 
EinOutError ocorre numa operação incorreta de I/O (ex: abrir um arquivo 
que não existe). 
EintOverFlow ocorre quando o resultado de um cálculo excedeu a 
capacidade do registrador alocado para ele (para variáveis 
inteiras). 
EinvalidCast ocorre quando se tenta realizar uma operação inválida com o 
operador as (ex: tentar usar um Sender com uma classe que 
não corresponde a seu tipo). 
EinvalidOp ocorre quando se detecta uma operação incorreta de ponto 
flutuante. 
EinvalidPointe
r 
ocorre quando se executa uma operação invalida com um 
ponteiro (ex: tentar liberar um ponteiro duas vezes). 
EoutOfMemor
y 
ocorre quando se tenta alocar memória mas já não existe 
mais espaço suficiente. 
EoverFlow ocorre quando o resultado de um cálculo excedeu a 
capacidade do registrador alocado para ele (para variáveis de 
ponto flutuante). 
ErangeError ocorre quando uma expressão excede os limites para a qual 
foi definida (ex: tentar atribuir 11 ao índice de um vetor que 
pode ir no máximo até 10). 
EStackOverflo
w 
ocorre quando o sistema não tem mais como alocar espaço 
de memória na Stack. 
EUnderflow ocorre quando o resultado de um cálculo é pequeno demais 
para ser representado como ponto flutuante. 
EZeroDivide ocorre quando se tenta dividir um valor de ponto flutuante por 
zero. 
 
TRY ... FINALLY 
 
O bloco try ... finally permite que um bloco de comandos seja executado, 
mesmo quando houver uma exceção. 
 
 
 
Sintaxe: 
try 
{ Bloco de comandos} 
finally 
{Bloco de comandos a ser executado mesmo quando ocorrer uma 
exceção} 
end; 
 
Exemplo: garantir que um arquivo será fechado mesmo quando ocorrer uma 
exceção. 
 
assign (arq, ‘teste.txt’); 
try 
reset (arq) 
{outros comandos sobre o arquivo} 
finally 
close (arq) 
end;

Outros materiais