PDF - Visualize / baixe o Module 6

Transcrição

PDF - Visualize / baixe o Module 6
Delphi 7.0
Module 6
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
729
Como por imagem na StatusBar ?
Mostrando imagens na barra de status.
Clique duplo sobre a StatusBar,
será aberta a tela ao lado, clique
no primeiro ícone amarelo 5
vezes ( Add New criar 5
divisões. Na primeira, terceira e
quarta divisão da StatusBar
defina a propriedade Style para
psOwnerDraw, para mostrar a
imagem.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
730
Como trocar papel de parede ?
Este é mais um código ( programa ) para trocar papel de parede. Insira um
componente Picture e um OpenPictureDialog.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
731
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
732
Como clicar em uma determinada imagem ?
Observe esta
imagem, as
propriedades ainda
não foram definidas,
de acordo com o
item 3.
Insira um formulário. File – New – Form.
Insira um componente Image ( aba Additional ), clique na propriedade picture e
insira uma imagem do tipo .bmp ( bitmap ).
Insira 3 componentes Shape ( aba Additional ). No canto superior esquerdo há
uma imagem, faça um retângulo sobre esta imagem usando um componente
shape, clique na propriedade +Brush, Color deve ter o valor clWhite, Style =
bsClear, clique em +Pen, clique em Style e defina psClear, isto para deixar a
borda do componente Shape invisível.
Clique no primeiro Shape que foi armado sobre a primeira imagem, clique no
evento OnMouseDown e digite:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
733
Rave Criando relatório
No artigo anterior apresentei minhas experiências com ferramentas de relatórios para
desenvolvimento de projetos Delphi. Neste estarei apresentando os componentes da
paleta RAVE e, no próximo, partirei para a prática da construção de relatórios usando
essa ferramenta.
Ficou bastante claro que essa suíte de componentes se distingue das demais pelo fato
de possibilitar um desenvolvimento estritamente baseado em código de programação
Delphi.
Essa técnica, apesar de trabalhosa, é bastante flexível, pois possibilita ao
programador mais experiente desenvolver seus próprios métodos de criação de
relatórios, sem muita dependência dos recursos disponibilizados pelo ambiente
gráfico da ferramenta.
Porque utilizar o desenvolvimento em código runtime?
Imagine a seguinte situação:
Preciso montar um Relatório de Vendas e apresente o movimento diário por
Cidade e por Vendedor. Seu layout deverá obedecer aos seguintes critérios de
impressão:
As vendas de segunda-feira à quarta-feira ficarão à esquerda do relatório na
cor azul.
As vendas da quinta-feira e sexta-feira, serão impressas à direita na cor verde.
As vendas do sábado serão impressas numa folha individual.
Na última página deverá ser emitido um resumo semanal de vendas.
Vendedores sem vendas no período deverão estar em negrito.
Experimente montar esse relatório usando queries SQL em um ambiente de
criação de relatórios visuais(!): Pode até ser que você consiga fazê-lo, mas
garanto que irá gastar muito mais tempo que o seu equivalente devidamente
codificado em Delphi.
Os pessimistas dirão que estou sendo extremista. Claro, estou... as dificuldades que o
desenvolvedor enfrenta na construção de projetos corporativos costumam ser maiores
e os prazos cada vez menores! Esta é a nossa realidade. Estaremos sempre nos
deparando com questões de difícil e trabalhosa solução. Precisamos aplicar a
ferramenta certa para cada problema. Não existe uma ferramenta mágica que atenda
a uma heterogeneidade de propósitos.
Se a construção de relatórios difíceis é um dos seus problemas, então, com certeza, o
RAVE veio para facilitar bastante o seu trabalho de desenvolvimento.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
734
Quem é o RAVE?
A incorporação do RAVE pelo Delphi 7.0 foi feita de uma forma bastante confusa
(creio que foi feita às pressas). Os componentes da paleta RAVE no Delphi 7.0 não
são compatíveis com o pacote oficial disponibilizado pela Nevrona em seu site. Lá
você encontrará o RAVE 4.09 trial para download e a 5.0 para a compra.
Os arquivos demos disponíveis para download não são compatíveis com o Delphi 7.0 e
RAVE 5.0, pois foram baseados no RAVE 4.09.
Houve uma mudança no nome das classes da versão 4.09 para 5.0 e alguns
componentes simplesmente desapareceram. Isto inviabilizará o uso dos exemplos de
demonstração da versão 4.09. Quem já utilizava o RAVE (ou, no meu caso, o
ReportPrinter) terá que modificar seus projetos para garantir a compatibilização do
Delphi 5/6 com o 7.0.
Produtos de terceiros, tipo o excelente Rave for Renders da Pragnaam
(http://www.pragnaan.com) não são compatíveis. Deverão ser rescritos. A Borland
não disponibiliza o código fonte do RAVE. Este deverá ser adquirido junto à Nevrona.
Até aí, nada de novo, já era assim com o QuickReport. É a técnica que a Borland usa
para promover seus parceiros de soluções.
Percebi alguns pequenos bugs na versão 5.0 do RAVE, principalmente na sua IDE de
criação de relatórios. A Nevrona está prometendo para breve um patch de correção.
Um bug interessante (se é que Bugs podem ser interessantes) acontece na versão 98
do Windows. quando o usuário tenta salvar um relatório criado na IDE. Uma
mensagem de erro o informará que não existe espaço livre no disco rígido (!). O
relatório só será salvo se você apontá-lo para a pasta raiz do drive. Cheguei a essa
conclusão depois de perder vários trabalhos desenvolvidos na IDE.
O desenvolvedor inicialmente enfrentará o problema da falta de documentação e
demos atualizados para a versão adotada pelo Delphi 7.0. Isto será apenas uma
questão de tempo, pois esta será a solução oficial para criação de relatórios em Delphi
à partir da versão 7.0.
Não percebi mudanças substanciais na engine básica do componente. Acredito que
essa evolução tenha caminhado basicamente para o lado do design de relatórios
usando a IDE do RAVE.
Os legionários do ReportBuilder (http://www.digital-metaphors.com) a acharão muito
confusa, e realmente é. Levem em consideração que essa IDE é bastante nova, se
comparada ao ReportBuilder, que já está no mercado desde o Delphi 2.0. A Nevrona
ainda tem muito o que aprender com a Digital-Metaphors.
A
propósito,
nos
fóruns
"borland.public.delphi.thirdparty-tools"
e
"borland.public.delphi.reporting-charting" está acontecendo um duelo de titãs entre os
criadores do RAVE e do ReportBuilder. Vale a pena acompanhá-la, é uma discussão de
alto-nível onde cada um expõe os recursos de sua ferramenta em comparação com a
concorrente. Se você não usa News, procure pelas palavras "Delphi" "RAVE"
"ReportBuilder" no http://groups.google.com.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
735
Para conhecer melhor o produto RAVE, recomendo o download da documentação
oficial da Nevrona nos endereços abaixo. São dois arquivos PDF (mais de 600
páginas) com uma excelente descrição técnica e funcional das classes do pacote.
Rave Visual Designer Documentation in Adobe Acrobat Format
http://www.nevrona.com/files/rave4.pdf
Borland Integration Guide Pro Documentation in Adobe Acrobat Format
http://www.nevrona.com/files/rppro4.pdf
Não deixe de visitar também a seção de Tips & Tricks. A maioria das dicas estão
desatualizadas, porém o código é compatível com as novas versões.
http://www.nevrona.com/rave/tips.shtml
O Delphi 7.0 traz alguns demos de relatórios do RAVE na pasta RAVE5\\DEMOS,
porém a Borland se esqueceu de um arquivo importante, o arquivo de projeto do
demo (arquivo .DPR), dificultando assim sua compilação pelos usuários com pouco
conhecimento do Delphi.
Para quem não sabe, RAVE significa "Report Authoring Visual Environment".
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
736
Rave Criando relatório no Delphi 7.0
Fazer relatório no Delphi 7 é totalmente diferente comparando ao Delphi 6.0. Abaixo
faremos um relatório exemplo usando o novo recurso, aba Rave.
Crie a tabela abaixo.
Crie o formulário de entrada de dados com o Form Wizard e insira um botão para
abrir o relatório.
Insira dois componentes, RvProject1 e RvTableConnection1 ( veja aba Rave ).
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
737
Dê um clique duplo sobre o ícone RvProject, será aberta a tela abaixo...
Usaremos a aba Report e alguns componetes de aba. Siga os passo de acordo com
os números.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
738
Demarca a região onde serão definidas as bandas e onde mostrará / listará os registros do relatório.
Note que a altura da região da
caixa esta baixa, ou seja,
imprimirá cerca de 5 ou 6 registros
neste espaço.
Band Component - Insira um Banda ( Band1 ) e nesta banda vamos inserir um cabeçalho.
No ponto verde pode ser
aumentado na altura da banda,
mantenha pressionado no botão e
arraste para cima e para baixo.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
739
Agora vamos inserir um cabeçalho no relatório. Para isto usaremos a aba Standard e o
componente “T” ( Text Component )
Para definir um título para página Band1.
Vamos usar a aba Drawing para definir uma linha abaixo do título Relatório de Clientes
– Teste 1 – Delphi 7.0 – Usando Rave.
No lado equerdo você
poderá definir as
propriedades da linha,
LineWidth ( largura linha ),
Color ( cor ) etc
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
740
Banda cabeçalho dos dados ( Band 2 - band component ). Clique na aba Standard e
insira 3 componentes Text Component.
DataBand Component
- Banda onde dados da tabela são mostrados,
impressos. Insira uma DataBand Component que esta na aba Report.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
741
Data Text component - Insira três componentes Data Text component. Este
componente permite associar ao campo da tabela.
Clique no ícone View.
Clique em Database Connection, após clique no botão Next, será aberta a página ao lado.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
742
Defina o Alias ( nome do Alias é Rave1 ) e o tipo de driver da tabela de dados ( Paradox ).
Clique em Direct Data View, após clique no botão Next, será aberta a página ao lado.
Agora vamos associar os campos da tabela, clique no componente Data Text1.
Clique nos 3 pontinhos
[...], será aberta a tela
abaixo, escolha o campo e
clique em Insert Field
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
743
Definindo campo Clie_Codigo ( código do cliente ). Clique no componente DataText1,
clique em DataField escolha o nome do campo Clie_Codigo, clique no botão Insert
Field. Após clique em DataView e defina DataView1.
Clique na primeira banda ( Band1 ), clique em BandStyle, será aberta a tela
abaixo, após clique em ControllerBand e defina DataBand1.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
744
Clique na primeira banda ( Band2 ), clique em BandStyle,
após clique em
ControllerBand e defina DataBand1.
Clique na banda DataBand1, clique na propriedade DataView e defina DataView1,
clique DataBand1, clique na propriedade BandStyle, será aberta a tela abaixo:
Clique na opção
Detail
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
745
Clique na banda Databand
Component, clique na
propriedade BandStyle,
será aberta uma tela para
definir propriedades, veja
página anterior.
Definindo campo Clie_Nome ( código do cliente ). Clique no componente DataText2,
clique em DataField escolha o nome do campo Clie_Nome, clique no botão Insert
Field. Após clique em DataView e defina DataView1.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
746
Definindo campo Clie_Data_Nasc ( Data de Nascimento ). Clique no
componente DataText3, clique em DataField escolha o nome do campo
Clie_Data_Nasc, clique no botão Insert Field. Após clique em DataView e
defina DataView1.
Clique no ícone Save Project para salvar o relatório, neste arquivo serão salvas
todas as propriedades etc do o projeto Rave como o nome de Project2.rav.
Clique no ícone RvProject1, clique em ProjectFile, informe o caminho e o nome
do arquivo do relatório ( Project2.rav ).
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
747
Relatório pronto. ☺ ufa ! ... imagina... este é um relatório bem simples ... ☺
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
748
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
749
Inserindo Data e Número de página no cabeçalho do relatório
Clique duplo sobre o componente
, clique na aba Report, insira um componente Data Text Component.
Clique no componente
DataText Component ,
clique na propriedade
DataField [...], será
aberta a tela abaixo.
Digite o texto entre aspas simples e
o sinal de mais:
‘Data: ‘ +
Clique no drop down em Report
Variables, escolha DateShort e clique
no botão Insert Report Var, após
digite o caracter mais ( + ), após digite:
+ ‘ Página ‘ +
Clique no drop down Report Variables,
escolha CurrentPage para imprimir
página atual.
Digite ‘ Data: ‘ +
Digite + ‘ Página ‘ +
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
750
Usando componentes CheckBox e RadioButton
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
751
Criando senha ( 1 )
Insira um Form, um MaskEdit ( aba Additional ) e um Bitbtn. O usuário terá 3
chances, se na terceira a senha for digitada errada será abortado o programa. Na
propriedade Name do formulário digite Senha_Frm.
No evento OnClick
do botão Bitbtn
acima ( OK ) digite
o código que está
na direita.
Abra seu projeto, clique no ícone View Unit ou pressione Ctrl F12 e coloque duas
barrinhas diante do nome do formulário da senha para cancelar esta linha.
Coloque duas barrinhas (
// ) diante da linha que
abre o formulário da
senha para que esta não
seja carregada.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
752
Project • options, clique no sinal de maior ( > ) para deslocar o formulário da
senha para direita.
O formulário da senha deve
estar do lado direito
( Available forms, ou
formulários disponíveis )
Após a senha qual é o formulário que você deseja abrir ?, neste exemplo abriremos
o Menu de opções.
No evento OnActivate
do formulário do Menu
digite o código abaixo.
Senha_Frm é o
formulário da
senha.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
753
Criando senha ( 2 )
Insara um Form, a propriedade Name do Form é Login_Frm, insira dois Edit, a
propriedade Name do primeiro Edit é Edit_usuario e o segundo Name é
Edit_Senha, veja abaixo a tela da senha e o programa fonte.
Código fonte completo da tela acima:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
754
File • New • Unit. O Delphi mostrará o conteúdo abaixo básico abaixo, você terá
que digitar ( implementar ) a Unit da senha. Este código poderá ser usado (
aproveitado ) em qualquer outro programa ou sistema que desejar.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
755
Veja abaixo o programa fonte da Unit da página anterior. A unit abaixo foi salva com
o nome de Rotinas.pas.
Foi criado um arquivo de Rotinas para facilitar ( tornar mais dinâmico ) o uso futuro
da função senha.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
756
Clique no ícone View Unit ( Ctrl F12 )
Após Application.Initialize digite: If
TelaDeLogin then
Begin … e na parte final do programa digite
Else Application.Terminate
Restringir área do mouse
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
757
Usando agentes da Microsoft
Trabalhando com os Agentes da Microsoft no Delphi e fazendo seus programas mais
alegres. Os testes a seguir foram realizados com Delphi 6.0
1) Faça download dos Agentes no site da Microsoft. Para instalar basta dar um clique
duplo em cada um dos agentes e Ok, very easy ☺, existem vários agentes e não
somente agentes da Microsoft mas também de outras empresas.
2) Abra o Delphi, na opção Component – Import ActiveX Control, clique em
Microsoft Agent Control 2.0 e Install ( para instalar o componente )
Selecione o Agente
clicando, após clique
no botão Install.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
758
Crie um projeto novo no Delphi, no formulário principal insira o componente Agent
que está na aba ActiveX
Se o campo Nome não for preenchido faremos com que o Agente Papagaio apareça
mostrando uma mensagem.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
759
Na seção Private
digite esta linha.
Se não for preenchido o
campo Nome o
Papagaio aparecerá e
fará as ações definidas
e desaparecerá.
Clique no Agente e no
evento
OnBallonHide digite
o código ao lado.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
760
Agente: Peedy
O foco esta no campo Nome,
se deixar o campo nome em
branco o agente será exibido e
fará suas ações.
Se você preferir usar o agente Merlin, instale o agente e no programa fonte substitua
o nome Peedy para Merlin.
Agente: Merlin
O foco esta no campo Nome,
se deixar o campo nome em
branco o agente será exibido e
fará suas ações.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
761
Peedy Palavras de animação do “ Papagaio ”
Animação
Retorno da animação
Fala ?
Som
Estado
Descrição
Acknowledge
None
No
No
None
Nods head
Alert
Yes, using exit branches
Yes
No
Listening
Straightens and raises eyebrows
Announce
Yes, using exit branches
Yes
Yes
None
Paper airplane flies in and unfolds
Blink
None
No
No
IdlingLevel1
IdlingLevel2
Blinks eyes
Confused
Yes, using exit branches
Yes
Yes
None
Eyes spin around
Congratulate
Yes, using exit branches
Yes
Yes
None
Displays blue ribbon
Decline
Yes, using exit branches
Yes
No
None
Shakes head
DoMagic1
None
Yes
Yes
None
Raises magic wand
DoMagic2
Yes, using exit branches
No
Yes
None
Lowers wand, clouds appear
DontRecognize
Yes, using exit branches
Yes
No
None
Shakes head and holds wing to ear
Explain
Yes, using exit branches
Yes
No
None
Extends arms to side
GestureDown
Yes, using exit branches
Yes
No
GesturingDown
Gestures down
Retorno da animação
Fala ?
Som
Estado
GestureLeft
Yes, using exit branches
Yes
No
GesturingLeft
Gestures left
GestureRight
Yes, using exit branches
Yes
No
GesturingRight
Gestures right
GestureUp
Yes, using exit branches
Yes
No
GesturingUp
Gestures up
GetAttention
GetAttentionReturn
Yes
Yes
None
Jumps up with wings outstretched
GetAttentionContinued
GetAttentionReturn
Yes
Yes
None
Jumps up with wings outstretched again
GetAttentionReturn
None
No
No
None
Returns to neutral position
Greet
Yes, using exit branches
Yes
Yes
None
Bows
Hearing_1
None
No
No
Hearing
Tilts head right (*looping animation)
Hearing_2
None
No
No
Hearing
Tilts head left (*looping animation)
Hearing_3
None
No
No
Hearing
Turns head right then left (*looping
animation)
Hide
None
No
Yes
Hiding
Flies away
Idle1_1
None
No
No
IdlingLevel1
IdlingLevel2
Takes breath
Idle1_2
None
No
No
IdlingLevel1
IdlingLevel2
Glances right and blinks
Idle1_3
None
No
No
IdlingLevel1
IdlingLevel2
Glances left and blinks
Idle1_4
None
No
No
IdlingLevel1
IdlingLevel2
Glances up and blinks
Idle1_5
None
No
No
IdlingLevel1
IdlingLevel2
Glances down and blinks
Idle2_1
Yes, using exit branches
No
No
IdlingLevel2
Puts on sunglasses
Idle2_2
None
No
Yes
IdlingLevel2
Eats a cracker
Idle3_1
None
No
Yes
IdlingLevel3
Yawns
Idle3_2
Yes, using exit branches
No
Yes
IdlingLevel3
Falls asleep (*looping animation)
Idle3_3
Yes, using exit branches
No
No
IdlingLevel3
Listens to music (*looping animation)
LookDown
LookDownReturn
No
No
None
Looks down
LookDownBlink
LookDownReturn
No
Yes
None
Blinks looking down
LookDownReturn
None
No
No
None
Returns to neutral position
Animação
Delphi 7
Descrição
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
762
LookDownLeft
LookDownLeftReturn
No
No
None
Looks down left
LookDownLeftBlink
LookDownLeftReturn
No
Yes
None
Blinks looking down left
LookDownLeftReturn
None
No
No
None
Returns to neutral position
LookDownRight
LookDownRightReturn
No
No
None
Looks down right
LookDownRightBlink
LookDownRightReturn
No
Yes
None
Blinks looking down right
LookDownRightReturn
None
No
No
None
Returns to neutral position
LookLeft
LookLeftReturn
Yes
No
None
Looks left
Fala ?
Som
Animação
Retorno da animação
Estado
Descrição
LookLeftBlink
LookLeftReturn
Yes
Yes
None
Blinks looking left
LookLeftReturn
None
No
No
None
Returns to neutral
position
LookRight
LookRightReturn
Yes
No
None
Looks right
LookRightBlink
LookRightReturn
Yes
Yes
None
Blinks looking right
LookRightReturn
None
No
No
None
Returns to neutral position
LookUp
LookUpReturn
No
No
None
Looks up
LookUpBlink
LookUpReturn
No
Yes
None
Blinks looking up
LookUpReturn
None
No
No
None
Returns to neutral position
LookUpLeft
LookUpLeftReturn
No
No
None
Looks up left
LookUpLeftBlink
LookUpLeftReturn
No
Yes
None
Blinks looking up left
LookUpLeftReturn
None
No
No
None
Returns to neutral position
LookUpRight
LookUpRightReturn
No
No
None
Looks up right
LookUpRightBlink
LookUpRightReturn
No
Yes
None
Blinks looking up right
LookUpRightReturn
None
No
No
None
Returns to neutral position
MoveDown
Yes, using exit branches
No
Yes
MovingDown
Flies down
MoveLeft
Yes, using exit branches
No
Yes
MovingLeft
Flies left
MoveRight
Yes, using exit branches
No
Yes
MovingRight
Flies right
MoveUp
Yes, using exit branches
No
Yes
MovingUp
Flies up
Pleased
Yes, using exit branches
Yes
No
None
Smiles
Process
None
No
Yes
None
Uses calculator
Processing
Yes, using exit branches
No
Yes
None
Uses calculator (*looping animation)
Read
ReadReturn
Yes
Yes
None
Opens magazine, reads and looks up
ReadContinued
ReadReturn
Yes
Yes
None
Reads and looks up
ReadReturn
None
No
Yes
None
Returns to neutral position
Reading
Yes, using exit branches
No
Yes
None
Reads (*looping animation)
RestPose
None
Yes
No
Speaking
Neutral position
Sad
Yes, using exit branches
Yes
No
None
Sad expression
Search
None
No
Yes
None
Reveals telescope and rotates
Searching
Yes, using exit branches
No
Yes
None
Reveals telescope and rotates (*looping
animation)
Show
None
No
Yes
Showing
Flies in
StartListening
Yes, using exit branches
Yes
No
None
Puts hand to ear
StopListening
Yes, using exit branches
Yes
No
None
Puts hands to ears
Suggest
Yes, using exit branches
Yes
Yes
None
Displays light bulb
Surprised
Yes, using exit branches
Yes
Yes
None
Looks surprised
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
763
Think
Animação
Thinking
Yes, using exit branches
Yes
No
Retorno da animação
Fala ?
Som
No
No
None
None
Looks up with wing on face
Estado
None
Descrição
Looks up with wing on face (*looping
animation)
Uncertain
Yes, using exit branches
Yes
No
None
Leans to right and shrugs
Wave
Yes, using exit branches
Yes
No
None
Waves
Write
WriteReturn
Yes
Yes
None
Takes out pencil and pad, writes and looks
up
WriteContinued
WriteReturn
Yes
Yes
None
Writes and looks up
WriteReturn
None
No
No
None
Returns to neutral position
Writing
Yes, using exit branches
No
Yes
None
Takes out pencil and pad, writes (*looping
animation)
Merlin Palavras de animação do “Mago”
Animação
Retorno da animação
Fala ?
Som
Estado
Descrição
Acknowledge
None
No
No
None
Nods head
Alert
Yes, using Exit branches
Yes
No
Listening
Straightens and raises eyebrows
Announce
Yes, using Exit branches
Yes
Yes
None
Raises trumpet and plays
Blink
None
No
No
IdlingLevel1
IdlingLevel2
Blinks eyes
Confused
Yes, using Exit branches
Yes
Yes
None
Scratches head
Congratulate
Yes, using Exit branches
Yes
Yes
None
Displays trophy
Congratulate_2
Yes, using Exit branches
Yes
Yes
None
Applauds
Decline
Yes, using Exit branches
Yes
No
None
Raises hands and shakes head
DoMagic1
None
Yes
No
None
Raises magic wand
DoMagic2
Yes, using Exit branches
No
Yes
None
Lowers wand, clouds appear
DontRecognize
Yes, using Exit branches
Yes
No
None
Holds hand to ear
Explain
Yes, using Exit branches
Yes
No
None
Extends arms to side
GestureDown
Yes, using Exit branches
Yes
No
GesturingDown
Gestures down
GestureLeft
Yes, using Exit branches
Yes
No
GesturingLeft
Gestures left
GestureRight
Yes, using Exit branches
Yes
No
GesturingRight
Gestures right
GestureUp
Yes, using Exit branches
Yes
No
GesturingUp
Gestures up
GetAttention
GetAttentionReturn
Yes
Yes
None
Leans forward and knocks
GetAttentionContinued
GetAttentionReturn
Yes
Yes
None
Leaning forward, knocks again
GetAttentionReturn
None
No
No
None
Returns to neutral position
Greet
Yes, using Exit branches
Yes
Yes
None
Bows
Hearing_1
None
No
No
Hearing
Ears extend (*looping animation)
Hearing_2
None
No
No
Hearing
Tilts head left (*looping animation)
Hearing_3
None
No
No
Hearing
Turns head left (*looping animation)
Hearing_4
None
No
No
Hearing
Turns head right (*looping animation)
Hide
None
No
Yes
Hiding
Disappears under cap
Idle1_1
Yes, using Exit branches
No
No
IdlingLevel1
IdlingLevel2
Takes breath
Idle1_2
Yes, using Exit branches
No
No
IdlingLevel1
IdlingLevel2
Glances left and blinks
Retorno da animação
Fala ?
Som
Animação
Delphi 7
Estado
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
Descrição
764
Idle1_4
Yes, using Exit branches
No
No
IdlingLevel1
IdlingLevel2
Glances up to the right and blinks
Idle2_1
None
No
No
IdlingLevel2
Looks at wand and blinks
Idle2_2
None
No
No
IdlingLevel2
Holds hands and blinks
Idle3_1
None
No
Yes
IdlingLevel3
Yawns
Idle3_2
Yes, using Exit branches
No
Yes
IdlingLevel3
Falls asleep (*looping animation)
LookDown
LookDownReturn
No
No
None
Looks down
LookDownBlink
LookDownReturn
No
No
None
Blinks looking down
LookDownReturn
None
No
No
None
Returns to neutral position
LookLeft
LookLeftReturn
No
No
None
Looks left
LookLeftBlink
LookLeftReturn
No
No
None
Blinks looking left
LookLeftReturn
None
No
No
None
Returns to neutral position
LookRight
LookRightReturn
No
No
None
Looks right
LookRightBlink
LookRightReturn
No
No
None
Blinks looking right
LookRightReturn
None
No
No
None
Returns to neutral position
LookUp
LookUpReturn
No
No
None
Looks up
LookUpBlink
LookUpReturn
No
No
None
Blinks looking up
LookUpReturn
None
No
No
None
Returns to neutral position
MoveDown
Yes, using Exit branches
No
Yes
MovingDown
Flies down
MoveLeft
Yes, using Exit branches
No
Yes
MovingLeft
Flies left
MoveRight
Yes, using Exit branches
No
Yes
MovingRight
Flies right
MoveUp
Yes, using Exit branches
No
Yes
MovingUp
Flies up
Pleased
Yes, using Exit branches
Yes
No
None
Smiles and holds hands together
Process
No
No
Yes
None
Stirs caldron
Read
ReadReturn
Yes
Yes
None
Opens book, reads and looks up
ReadContinued
ReadReturn
Yes
Yes
None
Reads and looks up
ReadReturn
None
No
Yes
None
Returns to neutral position
Reading
Yes, using Exit branches
No
Yes
None
Reads (*looping animation)
RestPose
None
Yes
No
Speaking
Neutral position
Sad
Yes, using Exit branches
Yes
No
None
Sad expression
Search
No
No
Yes
None
Looks into crystal ball
Retorno da animação
Fala ?
Som
Searching
Yes, using Exit branches
No
Yes
None
Looks into crystal ball (*looping animation)
Show
None
No
Yes
Showing
Appears out of cap
StartListening
Yes, using Exit branches
Yes
No
None
Puts hand to ear
StopListening
Yes, using Exit branches
Yes
No
None
Puts hands over ears
Suggest
Yes, using Exit branches
Yes
Yes
None
Displays lightbulb
Surprised
Yes, using Exit branches
Yes
Yes
None
Looks surprised
Think
Yes, using Exit branches
Yes
No
None
Looks up with hand on chin
Thinking
No
No
No
None
Looks up with hand on chin (*looping animation)
Uncertain
Yes, using Exit branches
Yes
No
None
Leans forward and raises eyebrow
Wave
Yes, using Exit branches
Yes
No
None
Waves
Write
WriteReturn
Yes
Yes
None
Opens book, writes and looks up
WriteContinued
WriteReturn
Yes
Yes
None
Writes and looks up
WriteReturn
None
No
Yes
None
Returns to neutral position
Writing
Yes, using Exit branches
No
Yes
None
Writes (*looping animation)
Animação
Delphi 7
Estado
Descrição
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
765
Genie Palavras de animação do “Gênio”
Animação
Retorno da animação
Fala ?
Som
Estado
Descrição
Acknowledge
None
No
No
None
Nods head
Alert
Yes, using Exit
branches
Yes
No
Listening
Straightens and raises eyebrows
Announce
Yes, using Exit
branches
Yes
No
None
Raises hand
Blink
None
No
No
IdlingLevel1
IdlingLevel2
Blinks eyes
Confused
Yes, using Exit
branches
Yes
No
None
Scratches head
Congratulate
Yes, using Exit
branches
Yes
Yes
None
Applauds
Congratulate_2
Yes, using Exit
branches
Yes
No
None
Gives thumbs-up gesture
Decline
Yes, using Exit
branches
Yes
No
None
Raises hands and shakes head
DoMagic1
None
Yes
No
None
Turns to side and raises hands
DoMagic2
Yes, using Exit
branches
No
Yes
None
Lowers hands, clouds appear
DontRecognize
Yes, using Exit
branches
Yes
No
None
Holds hand to ear
Explain
Yes, using Exit
branches
Yes
No
None
Extends arms to side
GestureDown
Yes, using Exit
branches
Yes
No
GesturingDown
Gestures down
GestureLeft
Yes, using Exit
branches
Yes
No
GesturingLeft
Gestures left
GestureRight
Yes, using Exit
branches
Yes
No
GesturingRight
Gestures right
GestureUp
Yes, using Exit
branches
Yes
No
GesturingUp
Gestures up
GetAttention
GetAttentionReturn
Yes
No
None
Waves arms
GetAttentionContinued
GetAttentionReturn
Yes
No
None
Waves arms again
GetAttentionReturn
None
No
No
None
Returns to neutral position
Greet
Yes, using Exit
branches
Yes
No
None
Bows
Hearing_1
None
No
No
Hearing
Ears extend (*looping animation)
Hearing_2
None
No
No
Hearing
Tilts head left (*looping animation)
Hearing_3
None
No
No
Hearing
Turns head left (*looping animation)
Hearing_4
None
No
No
Hearing
Turns head right (*looping animation)
Hide
None
No
Yes
Hiding
Disappears into smoke
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
766
Animação
Retorno da animação
Fala ?
Som
Estado
Descrição
Idle1_1
None
No
No
IdlingLevel1
IdlingLevel2
Takes breath
Idle1_2
None
No
No
IdlingLevel1
IdlingLevel2
Glances right and blinks
Idle1_3
Yes, using Exit
branches
No
No
IdlingLevel1
IdlingLevel2
Glances left and blinks
Idle1_4
None
No
No
IdlingLevel1
IdlingLevel2
Glances up to the right and blinks
Idle1_5
Yes, using Exit
branches
No
No
IdlingLevel1
IdlingLevel2
Glances down and blinks
Idle1_6
None
No
No
IdlingLevel1
IdlingLevel2
Glances up and blinks
Idle2_1
None
No
No
IdlingLevel2
Wisp snakes
Idle2_2
Yes, using Exit
branches
No
No
IdlingLevel2
Reveals scroll and reads
Idle2_3
Yes, using Exit
branches
No
No
IdlingLevel2
Reveals scroll and writes
Idle3_1
None
No
Yes
IdlingLevel3
Yawns
Idle3_2
Yes, using Exit
branches
No
Yes
IdlingLevel3
Falls asleep (*looping animation)
LookDown
LookDownReturn
No
No
None
Looks down
LookDownBlink
LookDownReturn
No
No
None
Blinks looking down
LookDownReturn
None
No
No
None
Returns to neutral position
LookLeft
LookLeftReturn
No
No
None
Looks left
LookLeftBlink
LookLeftReturn
No
No
None
Blinks looking left
LookLeftReturn
None
No
No
None
Returns to neutral position
LookRight
LookRightReturn
No
No
None
Looks right
LookRightBlink
LookRightReturn
No
No
None
Blinks looking right
LookRightReturn
None
No
No
None
Returns to neutral position
LookUp
LookUpReturn
No
No
None
Looks up
LookUpBlink
LookUpReturn
No
No
None
Blinks looking up
LookUpReturn
None
No
No
None
Returns to neutral position
MoveDown
Yes, using Exit
branches
No
Yes
MovingDown
Flies down
MoveLeft
Yes, using Exit
branches
No
Yes
MovingLeft
Flies left
MoveRight
Yes, using Exit
branches
No
Yes
MovingRight
Flies right
MoveUp
Yes, using Exit
branches
No
Yes
MovingUp
Flies up
Pleased
Yes, using Exit
branches
Yes
No
None
Smiles and holds hands together
Process
No
No
No
None
Spins into a cloud
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
767
Animação
Retorno da animação
Fala ?
Som
Estado
Descrição
Processing
Yes, using Exit
branches
No
No
None
Spins into a cloud (*looping animation)
Read
ReadReturn
Yes
Yes
None
Reveals scroll, reads and looks up
ReadContinued
ReadReturn
Yes
No
None
Reads and looks up
ReadReturn
None
No
No
None
Returns to neutral position
Reading
Yes, using Exit
branches
No
Yes
None
Reveal scroll and reads (*looping animation)
RestPose
None
Yes
No
Speaking
Neutral position
Sad
Yes, using Exit
branches
Yes
No
None
Sad expression
Search
No
No
No
None
Reveals binoculars and turns
Searching
Yes, using Exit
branches
No
No
None
Reveals binoculars and turns (*looping
animation)
Show
None
No
Yes
Showing
Appears out of smoke
StartListening
Yes, using Exit
branches
Yes
No
None
Puts hand to ear
StopListening
Yes, using Exit
branches
Yes
No
None
Puts hands over ears
Suggest
Yes, using Exit
branches
Yes
No
None
Displays lightbulb
Surprised
Yes, using Exit
branches
Yes
No
None
Looks surprised
Think
Yes, using Exit
branches
Yes
No
None
Looks up with hand on chin
Thinking
No
No
No
None
Looks up with hand on chin (*looping
animation)
Uncertain
Yes, using Exit
branches
Yes
No
None
Moves one hand to chin, other to hip, and
raises right eyebrow
Wave
Yes, using Exit
branches
Yes
No
None
Waves
Write
WriteReturn
Yes
Yes
None
Reveals scroll, writes and looks up
WriteContinued
WriteReturn
Yes
Yes
None
Writes and looks up
WriteReturn
None
No
No
None
Returns to neutral position
Writing
Yes, using Exit
branches
No
Yes
None
Reveals scroll, writes (*looping animation)
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
768
Exportando dados para arquivos textos (.txt)
Exportando e importando arquivo texto com campos de tamanhos variáveis.
Crie a tabela abaixo.
Arquivo TEXTO
Insira um formulário, um DBgrid, um Table, um DataSource e 3 botões.
Este código lerá
registros com de
tamanho variável, logo
adiante veremos como
ler registros com
tamanhos fixos.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
769
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
770
Registros com tamanhos fixos:
Arquivo texto de tamanho fixo = clientes_fixo.txt
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
771
Criando um editor de textos
Insira um
MainMenu, e os
componentes
Dialog
( aba Dialogs )
Clique duplo no componente MainMenu1
Após ter aberto
com clique duplo o
componente
MainMenu1
adicione as opções
do menu: defina o
Caption, Name e
ShortCut.
Digite
Digite
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
772
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
773
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
774
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
775
Resultado
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
776
Como imprimir arquivo no Word através do Delphi ?
Crie o arquivo abaixo no Word XP e grave com o nome Carta.doc
Estes nomes são apenas
variáveis e serão substituídas
pelas informações que estão
armazenadas no programa
feito no Delphi.
Insira um formulário e dois botões
Observe a linha Uses no início do programa, deve conter todas as bibliotecas
abaixo.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
777
Digite o código abaixo:
Será criado um arquivo de nome Tabela.doc via Delphi.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
778
Abrindo programas da Microsoft
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
779
Como abrir unidade de cd-rom, bloco de notas etc. ?
Dicas: Como abrir e fechar unidade de cd-rom, abrir menu iniciar do Windows,
navegador, Bloco de notas, proteção de tela ... Faça um formulário de acordo com o
exemplo abaixo:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
780
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
781
Como esconder o botão iniciar ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
782
Como esconder ícones da área de trabalho ?
Como esconder o relógio da barra de tarefas do Windows ?
Como tocar arquivo de som do tipo “.wav” ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
783
Como ressetar, desligar o computador ?
Insira um componente RadioGroup1 (aba
Standard ) Selecione o objeto RadioGroup e
na na propriedade Items clique em
(TStrings), será aberta uma caixa e dentro
desta digite as seguintes linhas uma abaixo
da outra:
Reinicia o Windows
Desliga o Windows
Força todos os programas a desligarem
Dá um logoff no usuário atual
Como tocar arquivo de som do tipo “.wav, .mid e .mp3” ?
Insira um componente MediaPlayer ( aba
System ), clique na propriedade
VisibleButtons e defina os valroes True ou
False para os botões que deseja visualizar ou
ocultar, insira um OpenDialog
( aba Dialogs ) e insira um botão do tipo Bitbtn.
Clique no OpenDialog, clique
na propriedade Filter, clique
nos 3 pontinhos ( ... ) e digite a
terminações de acordo com o
gráfico ao lado.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
784
Como abrir utilitários do Painel de Conrole do Windows ?
Abaixo estão os códigos dos utilitários do Painel de Controle.
// Abre o Painel de Controle
Executa_Prog ('shell32.dll,Control_RunDLL');
// Adiciona/Remove programas: instalar/desinstala programas
Executa_Prog ('shell32.dll,Control_RunDLL appwiz.cpl,,1');
// Adiciona/Remove programas: setup windows
Executa_Prog ('shell32.dll,Control_RunDLL appwiz.cpl,,2');
// Adiciona/Remove programas: disco de Inicialização
Executa_Prog ('shell32.dll,Control_RunDLL appwiz.cpl,,3');
// Mostra propriedades: fundo
Executa_Prog('shell32.dll,Control_RunDLL desk.cpl,,0');
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
785
// Mostra propriedades: proteção de Tela
Executa_Prog ('shell32.dll,Control_RunDLL desk.cpl,,1');
// Mostra propriedades: aparência
Executa_Prog('shell32.dll,Control_RunDLL desk.cpl,,2');
// Mostra propriedades: configurações
Executa_Prog('shell32.dll,Control_RunDLL desk.cpl,,3');
// Localizar
Executa_Prog('shell32.dll,Control_RunDLL findfast.cpl');
// Internet: geral
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,0');
// Internet: segurança
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,1');
// Internet: conteúdo
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,2');
// Internet: conexão
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,3');
// Internet: programas
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,4');
// Internet: avançado
Executa_Prog('shell32.dll,Control_RunDLL inetcpl.cpl,,5');
// Configurações regionais: configurações regionais
Executa_Prog('shell32.dll,Control_RunDLL intl.cpl,,0');
// Configurações regionais: numeração
Executa_Prog('shell32.dll,Control_RunDLL intl.cpl,,1');
// Configurações regionais: moeda
Executa_Prog('shell32.dll,Control_RunDLL intl.cpl,,2'W);
// Configurações regionais: hora
Executa_Prog('shell32.dll,Control_RunDLL intl.cpl,,3');
// Configurações regionais: data
Executa_Prog('shell32.dll,Control_RunDLL intl.cpl,,4');
// Joy stick: geral
Executa_Prog('shell32.dll,Control_RunDLL joy.cpl,,0');
// Joy stick: avançado
Executa_Prog('shell32.dll,Control_RunDLL joy.cpl,,0');
// Mouse
Executa_Prog('shell32.dll,Control_RunDLL main.cpl @0');
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
786
// Teclado
Executa_Prog('shell32.dll,Control_RunDLL main.cpl @1');
// Impressora
Executa_Prog('shell32.dll,Control_RunDLL main.cpl @2');
// Fontes
Executa_Prog('shell32.dll,Control_RunDLL main.cpl @3');
// Microsoft outlook: fax/mail
Executa_Prog('shell32.dll,Control_RunDLL mlcfg32.cpl'W);
// Multimedia: audio
Executa_Prog('shell32.dll,Control_RunDLL mmsys.cpl,,0');
// Multimedia: video
Executa_Prog('shell32.dll,Control_RunDLL mmsys.cpl,,1');
// Multimedia: midi
Executa_Prog('shell32.dll,Control_RunDLL mmsys.cpl,,2');
// Multimedia: cd music
Executa_Prog('shell32.dll,Control_RunDLL mmsys.cpl,,3');
// Multimedia: dispositivos
Executa_Prog('shell32.dll,Control_RunDLL mmsys.cpl,,4');
// Rede
Executa_Prog('shell32.dll,Control_RunDLL netcpl.cpl');
// Dialup-networking
Executa_Prog('rnaui.dll,RnaWizard');
// Administração odbc
Executa_Prog('shell32.dll,Control_RunDLL odbccp32.cpl'W);
// Configurando senhas
Executa_Prog('shell32.dll,Control_RunDLL password.cpl');
// System: general
Executa_Prog('shell32.dll,Control_RunDLL sysdm.cpl,,0');
// system: device manager
Executa_Prog('shell32.dll,Control_RunDLL sysdm.cpl,,1');
// System: hardware profiles
Executa_Prog('shell32.dll,Control_RunDLL sysdm.cpl,,2');
// System: performance
Executa_Prog('shell32.dll,Control_RunDLL sysdm.cpl,,3');
// Assistente para instalar novo Hardware
Executa_Prog('shell32.dll,Control_RunDLL sysdm.cpl @1');
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
787
// Assistente para adicionar nova impressora
Executa_Prog('shell32.dll,SHHelpShortcuts_RunDLL AddPrinter');
// Temas
Executa_Prog(,'shell32.dll,Control_RunDLL themes.cpl');
// Propriedades data e hora: geral
Executa_Prog('shell32.dll,Control_RunDLL timedate.cpl');
// Propriedades data/hora: zona
Executa_Prog('shell32.dll,Control_RunDLL timedate.cpl,,/f');
// Adicionar modem wizard
Executa_Prog('shell32.dll,Control_RunDLL modem.cpl,,add');
Windows Explorer
Executando os programas, utilitários do Painel de Controle do Windows, abrindo arquivos,
opções etc. Na linha Uses digite ShellApi.
1 - A linha abaixo abre o Explorer
procedure TForm1.Bit_OKClick(Sender: TObject);
begin
ShellExecute(Handle, 'explore', PChar('c:\windows'), nil, nil, SW_SHOW);
end;
2 - A linha abaixo imprimirá o arquivo readme.txt
ShellExecute(Handle, 'print', PChar('c:\Windows\Readme.txt'), nil, nil, SW_SHOW);
3 - A linha abaixo abrirá o home page (site) da playboy.com
ShellExecute(Handle, 'open', PChar('http://www.playboy.com/'), nil, nil, SW_SHOW);
4 - A linha abaixo abrirá o arquivo readme.txt
ShellExecute(Handle, 'open', PChar('c:\Test\Readme.txt'), nil, nil, SW_SHOW);
5 - A linha abaixo abrirá o arquivo recover.txt com o programa Notepad
ShellExecute(Handle, 'open', PChar('notepad'), PChar('c:\Windows\Recover.txt'), nil,
SW_SHOW);
6 - A linha abaixo só abrirá o arquivo o programa Notepad
ShellExecute(Handle, 'open', PChar('notepad'), nil, nil, SW_SHOW);
7 - A linha abaixo só abrirá qualquer aplicação
ShellExecute(Handle, 'open', PChar('c:\Windows\Calc.exe'), nil, nil, SW_SHOW);
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
788
Definindo imagem no fundo do formulário
Colocando uma figura de fundo no formulário
Na linha Uses defina o termo ShellApi
Abaixo do termo Private digite:
Meu_Bmp : TBitMap;
No evento OnCreate digite as linhas abaixo:
No evento OnPaint digite os código abaixo:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
789
Como animar imagem ?
Insira um componente Image ( aba
Additional ), clique na propriedade
Picture ( TBitmap ...) e informe
uma imagem, neste caso de um
Globo. Defina o fundo do formulário
preto, insira um componente Timer
( aba System ), clique no Time,
defina o nome da propriedade
( Name ) para Timer_Relogio e
Interval para 1000.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
790
Formulário simulando cortina
Ao clicar no botão será
aberta a cortina e o botão
superior ficará
temporariamente oculto,
após clicar no botão
inferior a cortina será
aberta e botão superior
será exibido novamente.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
791
Como criar uma barra flutuante ?
Clique na
lateral do
formulário e
arraste-o.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
792
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
793
Exemplo
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
794
Como capturar conteúdo de uma tela ?
Insira um
componente TImage
e na propriedade
Stretch defina o valor
para True.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
795
Como gravar imagem na tabela paradox ?
Para armazenar a foto ou imagem no campo Foto use o recurso “colar e copiar”
Crie a tabela de acordo como gráfico abaixo:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
796
Como encriptografar imagem/foto na tabela ?
Tipo de campo para armazenar a
imagem/foto = B
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
797
Salva
imagem
codificada
Clique no botão Carrega imagem
para abrir um arquivo de imagem,
antes de Salvar clique no botão
Encript / Decript, isto criptografará (
codificará / embaralhará ) a imagem,
finalmente clique no botão Salvar do
navegador de dados.
Para decodificar a imagem basta
clicar no botão Encript / Decript
☺ Você poderá melhorar ainda
mais este exemplo ☺ Have phun
...
No mesmo botão
criptografará e
decriptografará a
imagem.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
798
Como encriptografar texto ? ( 1 )
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
799
Como encriptografar texto ? ( 2 )
Digite linha na
seção public
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
800
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
801
Como encriptografar texto ? ( 3 )
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
802
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
803
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
804
Programa para gerar “código” de acesso
Gere um código de
segurança para o
seu sistema.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
805
Componente StatusBar
Insira uma StatusBar ( aba
Win32 ), dê um clique duplo sobre
a barra, clique 5 vezes no primeiro
ícone ( Add New ) para criar 5
divisões na barra para encaixar os
“textos”
Defina a largura
StatusBar:
0 – propriedade
1 – propriedade
2 – propriedade
3 – propriedade
4 – propriedade
5 – propriedade
Delphi 7
de cada divisão da
Width
Width
Width
Width
Width
Width
=
=
=
=
=
=
200
30
30
65
55
65
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
806
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
807
Como criar barra de título ?
Uma maneira simples para criar um barra de título personalizada.
Insira um botão
Button e na
propriedade Caption
digite um X
A parte azul escura é um
Label com a propriedade
Color = clNavy
Digite as Procedures
ao lado.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
808
Como converter Rich Text em arquivo .Bmp ?
Insira um
componente Image
( aba Additional ) e
um componente
SaveDialog
( aba Dialogs )
Insira um componente
RichEdit ( aba Win32 ) e
na propriedade Lines
digite um texto para
converter para .bmp
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
809
Como criar formulário com cor gradiente ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
810
Como fazer um letreiro ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
811
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
812
Criando um slide
Insira um Label e no Capiton
deste Label digite By English
Way. Insira um SpeedButton
e neste botão insira uma
imagem de um X
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
813
Criando um relógio flutuante
Dê um clique duplo sobre o
componente PopuMenu1 e
no Caption digite &Fechar
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
814
Para fechar o relógio,
clique com botão direito
do mouse sobre o relógio
e clique em Fechar.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
815
Como fazer um contador para finalizar programa ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
816
Como criar programa para listar tarefas ?
Tarefas que
estão na
memória do
computador.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
817
Como desativar o teclado e o mouse por 10 segundos ?
Após clicar no botão o teclado e o
mouse não funcionarão por 10
segundos.
Animando um botão
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
818
Como apagar arquivos do Cache do Internet Explorer ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
819
Como evitar que a tela não seja redimensionada ?
Não permitirá redimensionar e maximizar a tela.
Digite
Digite
Como encriptografar senha ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
820
Como “matar” processos ?
Insira um
RadioGroup ( aba
Standard ), na
propriedade Columns
defina o valor 2, na
propriedade Items
(...) escreva:
Não
A cada 5 segundos
Delphi 7
Insira uma StringGrid
( aba Additional ),
clique na StringGrid,
clique na propriedade
ColCount e defina o
valor 3
Insira um Timer ( aba
System )e na
propriedade Interval
digite 5000
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
821
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
822
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
823
Como fazer um formulário invisível ?
Digite
Digite
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
824
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
825
Formulário Visível
Formulário Invisível
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
826
Como definir imagem no fundo do formulário ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
827
Como abrir um programa com parâmetro ?
Antes de abrir a Calculadora do Windows será passado um parâmentro e se este for
diferente não abrirá a Calculadora.
Clique em no menu do Delphi em Run, clique em Run Parameters, clique no campo
Parameters e digite o parâmetro parâmetro_senha77
Digite o parâmetro
Para abrir projeto clique no ícone View Unit ( Ctrl + F12 )
Abra o projeto, talvez você terá
que digitar as bibliotecas Dialogs
e Windows.
.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
828
Como visualizar arquivo de vídeo (.avi) ?
Insira um componente
MediaPlayer que está na
aba System.
Crie um segundo formulário
Form_Mostra_Vídeo , onde será
aberto o arquivo de vídeo, ou
seja, um formulário em branco.
Como usar algumas classes do Windows ?
Abre o Editor de
Textos Word
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
829
Como definir imagem em um botão do tipo “Button” ?
Como forçar posicionamento em uma coluna ?
No exemplo abaixo mostra como posicionar o cursor na terceira coluna de um DBGrid.
O código deverá ser digitado no evento OnShow.
Forçar letras “maiúsculas” no DBGrid.
Key := AnsiLowerCase(Key)[1]; // minúsculas
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
830
Como gravar arquivo de som do tipo .wav ?
Insira um novo formulário, dois edit,
um botão SpeedButton, um
SpeedEdit ( aba Samples ), dois
componentes MediaPlayer ( aba
System ), um Timer ( aba System
), um SaveDialog ( aba Dialogs ),
um GroupBox, 8 RadioButton e
quatro botões do tipo BitBtn.
Como gravar ? Ouça uma
música, música de cd e clique
no botão Começa para iniciar
a gravação ☺
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
831
Digite estas
linhas
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
832
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
833
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
834
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
835
Girando imagem no formulário
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
836
Clique no botão e
gire a foto.
Digite as linhas
abaixo da seção
Private
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
837
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
838
Como trocar papel de parede ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
839
Como usar OLE ?
Usando WordPad em um aplicativo Delphi.
Vamos incorporar um objeto
externo, ou seja, o
WordPad do Windows
dentro de um programa
Delphi.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
840
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
841
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
842
Como obter código serial do HD ?
Como mostrar mensagem mais demorada ?
Mostrará mensagem após pressionar botão 5 segundos.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
843
Como imprimir conteúdo de um Memo ?
Como ocultar e mostrar ponteiro do mouse ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
844
Como ligar e desligar Capslock ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
845
Como obter informações: label, serial... ?
Como verificar programas que estão abertos ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
846
Como verificar se Drive esta Ok ?
Como criar e gravar em um arquivo .ini ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
847
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
848
Gravando e lendo dados no registro “regedit”
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
849
Fecha aplicativo com a mensagem “Erro fatal”
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
850
Como definir senha para tabela – paradox ?
Insira um novo formulário,
um edit e 3 botões do tipo
Bitbtn.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
851
Clique no botão “Adiciona senha”, será aberta uma pequena tela, digite a nova senha e
clique OK. Após cadastrado a senha feche o formulário corrente ( o cadastro atual ). Rode o
programa, clique no botão Ativa Tabela, será aberta uma tela solicitando senha, digite 123 (
senha ), após informado senha os registros serão exibidos no formulário. Para remover
senha: feche o programa ( formulário ), rode o programa ( F9 ), será mostrada a tela
solicitando senha, digite 123 e Ok, a senha foi removida.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
852
Como criar um despertador agenda ?
Insira um PageControl1 ( aba Win32
), clique no botão direito e clique em
New Page para criar abas ( paletas )
Insira um DriveComboBox1
( aba Win 3.1 )
Insira um DirectoryListBox1
( aba Win 3.1 )
Insira um DirectoryListBox1
( aba Win 3.1 )
Insira dois componentes DateTimePicker
( aba Win32 ). Clique no DateTimePicker
da Data e na popriedade deste digite
11/03/2001, clique no DateTimePicker
da hora e na propriedade Time digite
21:28:31
Insira um ListBox ( aba Standard ), insira
um componente Timer ( aba Win32 ) e na
propriedade do Interval defina 2000. Insira
um componente PopupMenu
( veja abaixo ).
Digite Const e a linha abaixo
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
853
Digite as linhas abaixo
da seção Private
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
854
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
855
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
856
Como funciona o despertador ?
Despertador
Execute o programa, note o ícone do relógio na barra inferior.
Clique no botão direito para ativá-lo, após clicado no botão direito será aberta uma tela de
atalho.
Clique na opção “Configura Despertador”, será aberta a tela abaixo:
A primeira paleta é para configurar o som.
Paleta “Horários” configura os lembretes.
Quando chegar a hora dos lembretes definidos soará o som programado, após
clique no lembrete programa e clique no botão “Remove”, para remover este
lembrete.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
857
ISAPI
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
858
ISAPI O que é ISAPI ?
ISAPI – Internet Server Application Programing Interface, é um padrão proposto pela
Microsoft, para criação de conteúdo dinâmico em servidores Web. ISAPI é uma alternativa ao
uso de aplicações CGI e tem como fundamental diferença o fato de ser implementado na
forma de DLLs, ao invés de executáveis.
A Microsoft apresentou a proposta deste padrão ao lançar a primeira versão do seu servidor
http, o IIS. A primeira versão dos IIS já suportava este padrão e a Microsoft não economizou
esforços para tornar a interface ISAPI o padrão dominante do ambiente Windows.
ISAPI Primeira aplicação
File – New – Other, clique em Web Server
Application, será aberta a tela abaixo, clique na
opção ISAPI/NSAPI Dynamic Link Library.
Dê um clique duplo dentro
do WebModule1, será
aberta a tela para editar as
ações
Editing
WebModule1.Actions
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
859
Clique em Add New ( Ins )
para adicionar uma ação.
Clique na aba Events, clique duplo no evento OnAction.
Dê um clique duplo em OnAction e digite a linha abaixo:
Abra o Painel de Controle, ( estou usando Windows XP Professional ) abra
Ferramentas Administrativas, dê um clique duplo em Internet Information
Services, vamos criar um Alias e apontar para pasta / diretório onde esta o projeto
que fizemos no Delphi.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
860
Posicione o ponteiro do mouse sobre a opção
Site da Web padrão, clique no botão direito,
clique em Novo, Diretório virtual, clique para
prosseguir, clique no botão Avançar, será
aberta uma tela, digite o nome do Alias isapi1,
clique em Avançar, digite no nome do caminho
/ pasta onde se encontra o projeto que você fez
no Delphi, neste exemplo o caminho é c:\aaa ,
clique no botão Avançar, marque os quadrinhos
abaixo...
Abra o navegador da Internet e digite a linha http://localhost/isapi1/project1.dll
Este é o resultado.
Arquivos que
compõe este
projeto.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
861
ISAPI Mostrando Hora
Para cada aplicação ISAPI precisamos definir um Alias com no Internet Information
Services.
File – New – Other, clique em Web Server Application, será aberta a tela abaixo, clique
na opção ISAPI/NSAPI Dynamic Link Library.
Dê um clique duplo
dentro do WebModule1,
será aberta a tela para
editar as ações
Editing
WebModule1.Actions
Clique na aba Events, clique duplo no evento OnAction.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
862
Insira um componente PageProducer1 que está na aba Internet.
Clique em PageProducer1, clique na aba Events e dê um clique duplo em OnHTMLTag e
digite as duas linhas abaixo:
Ou
Clique na propriedade HTMLDoc TStrings, será aberta uma pequena tela, dentro desta
são colocados os códigos Html.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
863
Compile o projeto, veja abaixo os arquivos gerados:
Clique no componente WebModule1.
Clique duplo em (TWebActionItems), será aberta a tela abaixo. Clique na propriedade
ProducerContent, clique no drop-down e escolha a opção PageProducer1.
Crie um alias para testar o projeto em sua máquina, após testado poderá ser
enviado para um servidor na Internet. Estou usando o Inernet Information Server
( Windows XP Pro ), se você estiver usando o Windows 98 poderá usar o servidor
PWS que se encontra em uma sub-pasta do cd do Windows.
Abra o Painel de Controle, abra Ferramentas Administrativas, dê um clique
duplo em Internet Information Services, vamos criar um Alias e apontar para
pasta / diretório onde esta o projeto que fizemos no Delphi.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
864
Posicione o ponteiro do mouse sobre a opção
Site da Web padrão, clique no botão direito,
clique em Novo, Diretório virtual, clique para
prosseguir, clique no botão Avançar, será aberta
uma tela, digite o nome do Alias Hora, clique em
Avançar, digite no nome do caminho / pasta onde
se encontra o projeto que você fez no Delphi,
neste exemplo o caminho é c:\Isapi_aula10 ,
clique no botão Avançar, marque os quadrinhos
abaixo...
Abra o navegador e digite http://localhost/hora/Projeto_Hora.dll
Lembre-se, hora é o nome do alias, o arquivo projeto_hora.dll é gerado após compilar (
Ctrl F9 ).
ATENÇÃO:
Se alterar o programa e compilá-lo novamente o Delphi mostrará uma mensagem de erro
abaixo...
e se tentar apagar o arquivo projeto_hora.dll o Windows não permitirá.
* Something is not ok in the above example and I could not figure out the problem Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
865
ISAPI Listando registros do Cadastro de Clientes
Projeto que lista todos os Clientes cadastrados na tabela ( paradox ).
Crie a tabela abaixo.
File – New – Other, clique em Web Server Application, será aberta a tela abaixo, clique
na opção ISAPI/NSAPI Dynamic Link Library.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
866
Dê um clique duplo
dentro do WebModule1,
será aberta a tela para
editar as ações
Editing
WebModule1.Actions
Clique na aba Events, clique duplo no evento OnAction.
Insira dois componentes, PageProducer1 ( aba Internet ) e um Table ( aba BDE ).
Clique no componente Table e defina as
propriedades: DababaseName:
C:\Isapi_Dados\Dados ( caminho onde esta a
tabela de dados ) , TableName: Clientes.db,
posicione o ponteiro do mouse sobre o
componente Table, clique no botão direito em
Fields Editor, será aberto uma pequena tela,
clique no botão direito e clique em Add Fields e
Ok para adicionar todos os campos da tabela.
Propriedade Active = True
Clique no WebModule1 e defina a propriedade OnCreate e OnDestroy.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
867
Clique no componente PageProducer1, clique duplo no evento OnHTMLTag e digite o
código abaixo:
Abra o Internet Information Server ( ou IIS ) com um clique duplo, posicione o
ponteiro do mouse sobre a opção Site da Web padrão, clique no botão direito, clique em
Novo, Diretório virtual, clique para prosseguir, clique no botão Avançar, será aberta uma
tela, digite o nome do Alias lista1, clique em Avançar, digite no nome do caminho / pasta
onde se encontra o
projeto que você fez no Delphi, neste exemplo o caminho é
c:\Isapi_dados , clique no botão Avançar, marque os quadrinhos abaixo...
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
868
Abra o navegador e digite a linha http://localhost/lista1/projeto_lista_clientes3.dll
O relatório da página anterior está com uma distribuição horrível, para resolver
esta situação usaremos outro componente da aba Internet chamado de
DataSetTableProducer1. Dê um clique duplo sobre DataSetTableProducer1 será
aberta a tela abaixo:
Clique nas várias
propriedades da tabela e
defina as propriedades de
acordo com seu gosto.
Antes de alterar as
propriedades da coluna
clique no campo desejado,
neste caso Clie_Codigo.
Alterei a cor de fundo do
primeiro campo, e cor de
toda a coluna, o nome da
coluna, alinhamento para
direita da coluna.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
869
Selecione todos os campos e alterei as cores de uma única vez.
Para listar os registros precisamos mudar a propriedade ProducerContent para
DataSetTableProducer1. Dê um clique duplo em WebModule1 para abrir a tela de ações,
veja logo abaixo:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
870
Veja como ficou o resultado ☺
Como ver meu IP ?
Outra maneira ...
Após clicar no botão será mostrado no Label1 o IP
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
871
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
872
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
873
Como ver IP local e do Servidor ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
874
Como pegar IP de um determinado servidor ?
Insira dois Edits, um
Bitbtn, uma Satus Bar (
aba Win32 ), um
NMFinger ( aba FastNet )
-
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
875
Como mostrar nome do Host ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
876
Como criar navegador de páginas ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
877
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
878
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
879
Como criar rastreador de portas ( Port Scanner ) ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
880
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
881
Como criar um simples programa “Chat” ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
882
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
883
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
884
Como criar um Cliente e Servidor ?
Este exemplo mostra como enviar mensagens para um outro computador na Internet
ou rede local, basta saber o IP da segunda máquina ( servidor ), também, o servidor
deverá estar rodando na segunda máquina. ☺
Cliente
Insira um RichEdit e
nomeia a propriedade
Name para
RichEdit_Usuario
Insira um Splitter
( aba Additional )
Clique no componente
ClientSocket1 e na propriedade
Port digite 9923
Este componente esta na aba
Internet
Insira um Memo e
nomeie a propriedade
Name para
Memo_Resultado
Insira uma StatusBar, dê um clique duplo
sobre esta, clique em Add new e na
propriedade Text digite Sem conexão...
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
885
Este é o Servidor, está
na segunda página.
Execute o programa
Servidor para abrir a
porta 9923
Este é um
componente Memo
e logo abaixo uma
StatusBar.
Servidor
A propriedade Port
deste componente devet
também ser 9923 para
que haja comunicação
entre ambos.
Este componente esta na
aba Internet
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
886
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
887
Como criar um programa de email ( 1 ) ?
Após digitado a
mensagem esta será
enviada para o
Outlook Express e
para enviar basta
clicar no botão
Enviar
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
888
Como criar um programa de email ( 2 ) ?
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
889
Conecte na internet...
Execute o programa acima, preencha os campos necessários e clique “enviar” ☺
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
890
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
891
Programa de email completo
Neste exemplo você poderá enviar para vários destinatários, várias cópias,
ocultas e anexar arquivos.
cópias
Insira um RadioGroup
(aba Standard )
Insira um
ListBox
( aba
Standard )
Insira dois componentes
NMSMTP ( aba FastNet )
Delphi 7
Insira um
ListView
( aba Win32 )
Insira um componente
OpenDialog ( aba Dialogs )
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
892
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
893
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
894
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
895
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
896
Como fazer email bomba ? ( 1 )
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
897
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
898
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
899
Como fazer email bomba ? ( 2 )
Neste exemplo usaremos arquivos de números no format “.gif” e animação ☺
Insira um
componente
ProgressBar
Insira 4
componentes
TImage ( aba
Additional )
Insira um componente
Animate ( aba Win32 )
Insira um
NMSMTP1
( aba FastNet )
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
900
Você precisará 4 arquivos de
imagens numéricas, estes
arquivos possuem a extensão
.bmp
Quando o email está
sendo enviado o
componente Animate
mostrará a animação.
Quando emails estão
sendo enviados a
pastinha será animada.
Digite estas
linhas.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
901
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
902
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
903
Abrindo link no evento onclick
No início do programa na cláusula Private digite:
Digite a procedure na cláusula Private:
Digite procedure Linkar:
Insira um Label, clique
na aba Events, clique
duplo no evento
OnClick e digite linha
abaixo.
No evento OnClick
digite a linha ao lado.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
904
Programa de comunicação interna
Já vimos um programa anteriormente similar, porém este permitirá abrir e fechar o
cd-rom da outra máquina, ocultar e mostrar a barra de ferramentas, ocultar e mostrar
os ícones da área de trabalho etc.
Defina a propriedade Port
para 35000 para os dois
compoentes Cliente e
Servidor.
Insira um
componente
Memo1
Insira um
componente
ImageList ( aba
Additional )
Insira um
componente
MainMenu
Inicio doprograma fonte:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
905
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
906
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
907
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
908
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
909
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
910
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
911
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
912
Testando o programa:
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
913
No menu, clique na opção “ser servidor”
Clique no menu Opções, clique em “conectar ao servidor”, será aberta uma caixa de
diálogo, digite o ip local padrão 127.0.0.1 e ok
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
914
Como gerar aquivo .html com todos registros ?
O exemplo a seguir mostra como gerar um arquivo .html com todos os registros de
um tabela.
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
915
Arquivo gerado:
Como obter código fonte de um site ?
Insira um componente Memo1 e um NMHTTP.
Este componente
está na aba
FastNet.
Retornará o Memo o código
html do site www.tpa.com.br
Be Always Thankful
Everything comes and goes
Delphi 7
- by Jurandir – Timbó – SC - Brasil - Sharing knowledge
916

Documentos relacionados