Preview only show first 10 pages with watermark. For full document please download

Delphi Aplicado Módulo 5a

Apostila de delphi, curso completo

   EMBED


Share

Transcript

 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 632  Como trocar papel de parede ? Este é mais um código ( programa ) para trocar papel de parede. Insira um componente Picture e um OpenPictureDialog. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 633 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 634  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: “Thank You Lo r d For My Two Lovely Blessed Sons” Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 635  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. 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. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 636 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. 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 637  Rave Relatório  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 638  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 Aplicado     by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 639   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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 640 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 641  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 642   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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 643  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 644  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 645  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 646 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 647  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 648 Relatório pronto. ☺ ufa ! ... imagina... este é um relatório bem simples ... ☺ Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 649 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 650  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 651  Usando componentes CheckBox e RadioButton Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 652  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 653  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 654  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 655  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 656 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 657  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 658  Como usar os 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 659 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 660 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 661 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 662 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 LookDownLeft LookDownLeftReturn No No None Looks down left Animação Delphi Aplicado  by Jurandir A. Pellin – Timbó Descrição (E-mail: [email protected]) 663 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 LookRight LookRightReturn Yes No 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 Think Yes, using exit branches Yes No None Looks up with wing on face position Delphi Aplicado  by Jurandir A. Pellin – Timbó None Looks right (E-mail: [email protected]) 664 Animação Thinking Retorno da animação None Fala ? Som No No 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 Idle1_3 Yes, using Exit branches No No IdlingLevel1 IdlingLevel2 Glances right Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 665 Animação Retorno da animação Fala ? Som 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 Aplicado  by Jurandir A. Pellin – Timbó Estado Descrição Estado Descrição (E-mail: [email protected]) 666 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 667 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 668 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 669  Como exportar e importar arquivos textos (.txt) ? Exportando e importando arquivo texto com campos de tamanhos variáveis. Arquivo TEXTO  Crie a tabela abaixo.  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 670 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 671 Registros com tamanhos fixos: Arquivo texto de tamanho fixo = clientes_fixo.txt Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 672  Como criar 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. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 673 Digite Digite Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 674 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 675 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 676 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 677 Resultado Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 678  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 679 Digite o código abaixo: Será criado um arquivo de nome Tabela.doc via Delphi. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 680  Como abrir programas da Microsoft ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 681  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 682 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 683  Como esconder o botão iniciar ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 684  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 685  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 686  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'); // Mostra propriedades: proteção de Tela Executa_Prog ('shell32.dll,Control_RunDLL desk.cpl,,1'); Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 687 // 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'); // Teclado Executa_Prog('shell32.dll,Control_RunDLL main.cpl @1'); Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 688 // 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'); // Assistente para adicionar nova impressora Executa_Prog('shell32.dll,SHHelpShortcuts_RunDLL AddPrinter'); // Temas Executa_Prog(,'shell32.dll,Control_RunDLL themes.cpl'); Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 689 // 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);  Como colocar 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: Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 690 No evento OnPaint digite os código abaixo:  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 691  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 692  Como criar uma barra flutuante ? Clique na lateral do formulário e arraste-o. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 693 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 694 Exemplo  Como capturar conteúdo de uma tela ? Insira um componente TImage e na propriedade Stretch defina o valor para True. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 695  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 696  Como encriptografar imagem/foto na tabela ? Tipo de campo para armazenar a imagem/foto = B Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 697 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 698  Como encriptografar texto ? ( 1 ) Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 699  Como encriptografar texto ? ( 2 ) Digite linha na seção public Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 700 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 701  Como encriptografar texto ? ( 3 ) Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 702 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 703 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 704  Programa para gerar “código” de acesso Gere um código de segurança para o seu sistema. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 705  Como usar o 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 de cada divisão da StatusBar: 0 – propriedade Width = 200 1 – propriedade Width = 30 2 – propriedade Width = 30 3 – propriedade Width = 65 4 – propriedade Width = 55 5 – propriedade Width = 65 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 706  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 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 707 Digite as Procedures ao lado.  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 708 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 709  Como criar formulário com cor gradiente ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 710  Como fazer um letreiro ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 711  Como criar 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 712  Como criar um relógio flutuante ? Dê um clique duplo sobre o componente PopuMenu1 e no Caption digite &Fechar Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 713 Para fechar o relógio, clique com botão direito do mouse sobre o relógio e clique em Fechar. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 714  Como fazer um contador para finalizar programa ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 715  Como criar programa para listar tarefas ? Tarefas que estão na memória do computador. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 716  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.  Como animar um botão ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 717  Como apagar arquivos do Cache do Internet Explorer ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 718  Como evitar que a tela não seja redimensionada ? Não permitirá redimensionar e maximizar a tela. Digite Digite  Como encriptografar senha ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 719  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 Aplicado  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 A. Pellin – Timbó (E-mail: [email protected]) 720 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 721  Como fazer um formulário invisível ? Digite ... Digite ... Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 722 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 723 Formulário Visível Formulário Invisível Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 724  Como definir imagem no fundo do formulário ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 725  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 726  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,  Como usar algumas classes do Windows ? Abre o Editor de Textos Word Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 727  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]; Delphi Aplicado  by Jurandir A. Pellin – Timbó // minúsculas (E-mail: [email protected]) 728  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 729 Digite estas linhas Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 730 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 731 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 732 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 733  Como girar imagem no formulário ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 734 Clique no botão e gire a foto. Digite as linhas abaixo da seção Private Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 735 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 736  Como trocar papel de parede ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 737  Como usar OLE ? É possível utilizar por exemplo o WordPad em um aplicativo Delphi. Vamos incorporar um objeto externo, ou seja, o WordPad do Windows dentro de um programa Delphi. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 738 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 739  Como obter código serial do HD ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 740  Como mostrar mensagem mais demorada ? Mostrará mensagem após pressionar botão 5 segundos.  Como imprimir conteúdo de um Memo ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 741  Como ocultar e mostrar ponteiro do mouse ?  Como ligar e desligar Capslock ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 742  Como obter informações: label, serial... ?  Como verificar programas que estão abertos ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 743  Como verificar se Drive esta Ok ?  Como criar e gravar em um arquivo .ini ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 744 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 745  Gravando e lendo dados no registro “regedit” Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 746  Fecha aplicativo com a mensagem “Erro fatal” Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 747  Como definir senha para tabela – paradox ? Insira um novo formulário, um edit e 3 botões do tipo Bitbtn. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 748 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 749  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 750 Digite as linhas abaixo da seção Private Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 751 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 752 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 753 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 754 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 755  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 756  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. 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... Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 757 Abra o navegador da Internet e digite a linha http://localhost/isapi1/project1.dll Arquivos que compõe este projeto. Este é o resultado.  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 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 758  Clique na aba Events, clique duplo no evento OnAction.  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 759  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.  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... Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 760 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á. Este problema tinha no Windows 98, este exemplo foi feito no Windows XP Pro, portanto se alguém tiver alguma dica para resolver este problema ficaria contente ☺ Se fizer 5 alterações, terei que salvar o mesmo projeto com 5 nomes diferentes ... this makes me stressed ! ...  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 761  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 762  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... Abra o navegador e digite a linha http://localhost/lista1/projeto_lista_clientes3.dll Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 763 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. Selecione todos os campos e alterei as cores de uma única vez. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 764 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: Veja como ficou o resultado ☺ Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 765  Como ver meu IP ? Outra maneira ... Após clicar no botão será mostrado no Label1 o IP Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 766  Como ver IP local e do Servidor ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 767  Como pegar IP de um determinado servidor ? Insira dois Edits, um Bitbtn, uma Satus Bar ( aba Win32 ), um NMFinger ( aba FastNet ) Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 768 -  Como mostrar nome do Host ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 769 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 770  Como criar navegador de páginas ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 771 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 772 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 773  Como criar rastreador de portas ( Port Scanner ) ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 774 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 775  Como criar um simples programa “Chat” ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 776 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 777 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 778  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 779 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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 780 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 781  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 782  Como criar um programa de email ( 2 ) ? Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 783 • • Conecte na internet... Execute o programa acima, preencha os campos necessários e clique “enviar” ☺ Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 784  Programa de email completo Neste exemplo você poderá enviar para vários destinatários, várias cópias, cópias ocultas e anexar arquivos. Insira um RadioGroup (aba Standard ) Insira um ListBox ( aba Standard ) Insira um ListView ( aba Win32 ) Insira dois componentes NMSMTP ( aba FastNet ) Delphi Aplicado  Insira um componente OpenDialog ( aba Dialogs ) by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 785 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 786 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 787 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 788 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 789  Como fazer email bomba ? ( 1 ) Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 790 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 791 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 792 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 793  Como fazer email bomba ? ( 2 ) Neste exemplo usaremos arquivos de números no format “.gif” e animação ☺ Insira um componente ProgressBar Insira um NMSMTP1 ( aba FastNet ) Você precisará 4 arquivos de imagens numéricas, estes arquivos possuem a extensão .bmp Delphi Aplicado  Insira 4 componentes TImage ( aba Additional ) Insira um componente Animate ( aba Win32 ) Quando o email está sendo enviado o componente Animate mostrará a animação. by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 794 Quando emails estão sendo enviados a pastinha será animada. Digite estas linhas. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 795 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 796  Como criar “link” ? Ao clicar será aberto um site No início do programa na cláusula Private digite:  Digite a procedure na cláusula Private: Insira um Label, clique na aba Events, clique duplo no evento OnClick e digite linha abaixo.  Digite procedure Linkar: No evento OnClick digite a linha ao lado. Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 797  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 798 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 799 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 800 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 801 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 802 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 803 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 804 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 805 Como testar o programa acima: Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 806 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  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 Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 807 Arquivo gerado: Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 808  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 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 809  Como por imagem na StatusBar ?............................................................................................................. 632  Como trocar papel de parede ? .................................................................................................................. 633  Como clicar em uma determinada imagem ? ............................................................................................ 635  Rave  Criando relatório ........................................................................................................................... 636  Rave Relatório  Criando relatório no Delphi 7.0 ................................................................................. 638  Inserindo Data e Número de página no cabeçalho do relatório ................................................................ 651  Usando componentes CheckBox e RadioButton....................................................................................... 652  Criando senha ( 1 ) ................................................................................................................................... 653  Criando senha ( 2 ) .................................................................................................................................... 655  Restringir área do mouse........................................................................................................................... 658  Como usar os Agentes da Microsoft ?...................................................................................................... 659 Peedy  Palavras de animação do “ Papagaio ” ............................................................................................. 663 Merlin  Palavras de animação do “Mago”.................................................................................................... 665 Genie  Palavras de animação do “Gênio”..................................................................................................... 667  Como exportar e importar arquivos textos (.txt) ? ................................................................................... 670  Como criar um editor de textos ? .............................................................................................................. 673  Como imprimir arquivo no Word através do Delphi ?.............................................................................. 679  Como abrir programas da Microsoft ? ..................................................................................................... 681  Como abrir unidade de cd-rom, bloco de notas etc. ? ............................................................................... 682  Como esconder o botão iniciar ? .............................................................................................................. 684  Como esconder ícones da área de trabalho ?............................................................................................. 685  Como esconder o relógio da barra de tarefas do Windows ? .................................................................... 685  Como tocar arquivo de som do tipo “.wav” ? .......................................................................................... 685  Como ressetar, desligar o computador ? ................................................................................................... 686  Como tocar arquivo de som do tipo “.wav, .mid e .mp3” ? ..................................................................... 686  Como abrir utilitários do Painel de Conrole do Windows ? ..................................................................... 687  Windows Explorer..................................................................................................................................... 690  Como colocar imagem no fundo do formulário ? ..................................................................................... 690  Como animar imagem ? ........................................................................................................................... 691  Formulário simulando cortina ................................................................................................................... 692  Como criar uma barra flutuante ?.............................................................................................................. 693  Como capturar conteúdo de uma tela ? .................................................................................................... 695  Como gravar imagem na tabela paradox ? ................................................................................................ 696  Como encriptografar imagem/foto na tabela ? .......................................................................................... 697  Como encriptografar texto ? ( 1 ) ............................................................................................................. 699  Como encriptografar texto ? ( 2 ) ............................................................................................................. 700  Como encriptografar texto ? ( 3 ) .............................................................................................................. 702  Programa para gerar “código” de acesso................................................................................................... 705  Como usar o componente StatusBar ?....................................................................................................... 706  Como criar barra de título ?...................................................................................................................... 707  Como converter Rich Text em arquivo .Bmp ?......................................................................................... 708  Como criar formulário com cor gradiente ? .............................................................................................. 710  Como fazer um letreiro ?........................................................................................................................... 711  Como criar um slide ? ............................................................................................................................... 712  Como criar um relógio flutuante ? ............................................................................................................ 713 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 810  Como fazer um contador para finalizar programa ?.................................................................................. 715  Como criar programa para listar tarefas ? ................................................................................................ 716  Como desativar o teclado e o mouse por 10 segundos ? .......................................................................... 717  Como animar um botão ? ......................................................................................................................... 717  Como apagar arquivos do Cache do Internet Explorer ?........................................................................... 718  Como evitar que a tela não seja redimensionada ?.................................................................................... 719  Como encriptografar senha ?..................................................................................................................... 719  Como “matar” processos ? ........................................................................................................................ 720  Como fazer um formulário invisível ? ...................................................................................................... 722  Como definir imagem no fundo do formulário ? ...................................................................................... 725  Como abrir um programa com parâmetro ? .............................................................................................. 726  Como visualizar arquivo de vídeo (.avi) ? ............................................................................................... 727  Como usar algumas classes do Windows ? ............................................................................................... 727  Como definir imagem em um botão do tipo “Button” ? ........................................................................... 728  Como forçar posicionamento em uma coluna ? ........................................................................................ 728  Como gravar arquivo de som do tipo .wav ?............................................................................................. 729  Como girar imagem no formulário ?......................................................................................................... 734  Como trocar papel de parede ? .................................................................................................................. 737  Como usar OLE ? ..................................................................................................................................... 738  Como obter código serial do HD ?........................................................................................................... 740  Como mostrar mensagem mais demorada ?............................................................................................. 741  Como imprimir conteúdo de um Memo ? ................................................................................................ 741  Como ocultar e mostrar ponteiro do mouse ?........................................................................................... 742  Como ligar e desligar Capslock ?............................................................................................................. 742  Como obter informações: label, serial... ?................................................................................................. 743  Como verificar programas que estão abertos ? ........................................................................................ 743  Como verificar se Drive esta Ok ? ........................................................................................................... 744  Como criar e gravar em um arquivo .ini ?................................................................................................ 744  Gravando e lendo dados no registro “regedit” .......................................................................................... 746  Fecha aplicativo com a mensagem “Erro fatal” ........................................................................................ 747  Como definir senha para tabela – paradox ? ............................................................................................. 748  Como criar um despertador agenda........................................................................................................... 750  Como ver meu IP ?.................................................................................................................................... 766  Como ver IP local e do Servidor ? ............................................................................................................ 767  Como pegar IP de um determinado servidor ? .......................................................................................... 768  Como mostrar nome do Host ?.................................................................................................................. 769  Como criar navegador de páginas ? .......................................................................................................... 771  Como criar rastreador de portas ( Port Scanner ) ? ................................................................................... 774  Como criar um simples programa “Chat” ? .............................................................................................. 776  Como criar um Cliente e Servidor ?.......................................................................................................... 779  Como criar um programa de email ( 1 ) ? ................................................................................................ 782  Como criar um programa de email ( 2 ) ? ................................................................................................. 783  Programa de email completo..................................................................................................................... 785  Como fazer email bomba ? ( 1 ).............................................................................................................. 790  Como fazer email bomba ? ( 2 ).............................................................................................................. 794  Como criar “link” ? Ao clicar será aberto um site ................................................................................... 797  Programa de comunicação interna ............................................................................................................ 798  Como gerar aquivo .html com todos registros ?........................................................................................ 807  Como obter código fonte de um site ?....................................................................................................... 809 Delphi Aplicado  by Jurandir A. Pellin – Timbó (E-mail: [email protected]) 811