"- teria como arrumar esse código de modo que ele executasse a rotina "mais
devagar" independente do número de letras? "

Chará, faça assim (gambiarra, mas funciona):

1 - Crie uma variável chamada "iPosicao : integer" na sessão private;

2 - No FormShow da tela, coloque ela como "iPosicao := 1;"

3 - No Evento OnTimer , coloque a código abaixo:

var
   iTamanho : integer;
begin
      iTamanho := length(edit1.text);
      label1.Caption := copy(edit1.Text,1,iPosicao-1) +
                        uppercase(copy(edit1.text,iPosicao,1)) +
                        copy(edit1.text,iPosicao+1,length(edit1
text)-(iPosicao-1));
      if iPosicao <> iTamanho
        then inc(iPosicao)
        else iPosicao := 1;
      application.ProcessMessages;
end;

O Problema estava que a rotina era executada dentro do comando "for", e não
no OnTimer somente.
 
 
Abraços,
 
Eduardo RC Neto
Desenvolvimento de Sistemas
-------------------------------------------------------
Archive ISP - Rio de Janeiro - RJ
[EMAIL PROTECTED]
www.archive.com.br

-------Mensagem original-------
 
De: Eduardo Silva ®
Data: 08/31/05 14:31:53
Para: delphi-br@yahoogrupos.com.br
Assunto: RES: [delphi-br] Re: Laço com uppercase e lowercase
 
Cara, vc explica e entende os problemas muito bem.
 
Parabéns pela sua lógica e pelas explicações.
 
Só que eu to com dois problemas:
 
- teria como arrumar esse código de modo que ele executasse a rotina "mais
devagar" independente do número de letras?
 
- não to conseguindo fechar a aplicação clicando no x do form...
 
Como resolver esses dois problemas?
 
 
 
-----Mensagem original-----
De: delphi-br@yahoogrupos.com.br [mailto:delphi-br@yahoogrupos.com.br
>mailto:delphi-br@yahoogrupos.com.br";>delphi-br@yahoogrupos.com.br
[mailto:[EMAIL PROTECTED]
nome de Stock
Enviada em: quarta-feira, 31 de agosto de 2005 13:53
Para: delphi-br@yahoogrupos.com.br
Assunto: [delphi-br] Re: Laço com uppercase e lowercase
 
 
Segundo o seu codigo:  a rotina sera executada a cada 2 segundo... certo?
para que nao houvesse parada no final da palavra vc teria que ter  20 letras
nao palavra que ta sofrendo a mudança, haja visto que:  ele muda a letra a
cada decimo de segundo, por isso ta rapido; ele executa a rotina a cada 2
segundo...  uma palavra com 10 letras ocasionaria um tempo de 1 segundo para
ser
percorrida o que faria esperar um outro segundo para uma nova execução...
acho que seu problema esta por ai    [EMAIL PROTECTED] 600 modelos de
sites profissionais - Imperdivel
tp://www.kitsites.com/index.php?ref=50   -------Original Message-------
From: Eduardo Silva ® Date: 08/31/05 13:37:35 To: Grupo Delphi-br Subject:
Laço com uppercase e lowercase   Galera, com a rotina abaixo eu quase
conegui chegar no que eu quero.   Coloquei um timer, interval = 2000.   O
problema é que ele ta muito rápido e fica parado muito tempo no final da
ultima letra. Algupém tem uma saída mais   "elegante"?   Obs: testei várias
configurações e não cheguei num número ideal.....por isso, não sei se a
solução seria via programação ou   ajuste de números mesmo.     procedure
TForm1.Timer1Timer(Sender: TObject); var    i, a : integer; begin
application.ProcessMessages;    for a := 1 to length(edit1.text) do    begin
label1.Caption := copy(edit1.Text,1,a-1) +
uppercase(copy(edit1.text,a,1)) +
copy(edit1.text,a+1,length(edit1.text)-(a-1));
application.ProcessMessages;       sleep(100);    end; end;
~\\|//~                     -(o o)-
o--------------oOOOo--(_)--oOOOo-------------o |
| |           Eduardo de Almeida Silva         | |   Câmara Municipal de
Lençóis Paulista     | |  [EMAIL PROTECTED]  -   (14)3263-0326   | |
| |                .oooO   Oooo.               |
---------------(   )---(   )---------------o                   \ (     ) /
\_)   (_/       -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM
>>>>>   Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages   Para falar com o
moderador, envie um e-mail para:   [EMAIL PROTECTED] ou
[EMAIL PROTECTED]   Links do Yahoo! Grupos
 
[As partes desta mensagem que não continham texto foram removidas]
 
 
 
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
 
Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages
 
Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos
 
 
 
 
 
 
 
 
 
__________ NOD32 1.1206 (20050831) Information __________
 
This message was checked by NOD32 antivirus system.
http://www.nod32.com
 
 
 
 
--
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
 
Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages
 
Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos
 
 
 
 
 
 
 
 
 

[As partes desta mensagem que não continham texto foram removidas]



-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a