Fórum gt;gt;gt;Simularlt;lt;lt; #154391
12/04/2003
0
olha só
o q eu quero é meio dificil de intender mais vamu tentar
tem duas edits no meu form
quando o cara estiver digitando na edit2 na edit1 vai aparecer uma frase sabe tipo assim
a frase é
delphi é o melhor
e supondo q ele vai digitar
olá tudo bem
no edit2...
intaum quando ele digitar a letra ´o´ no edit2 a letra ´d´ aparece no edit1
a ´l´ a ´e´ e assim por diante...
Deu pra inteder???
desde já muito obrigado!!!
Robotizar
Curtir tópico
+ 0Posts
12/04/2003
Excon
Bom. Se entendi o quevocê está querendo, faça o seguinte:
If(Edit2.text[1] = ´O´) Then
Edit1.text := Edit1.text := ´D´;
Continue testando as demais letras digitadas.
Gostei + 0
12/04/2003
Carlos Filho
Cara! Que pergunta estranha... Conta pra gente o que você quer fazer?
Eu entendi o que você quer mas gostaria de saber porque você quer isso...
Contudo aqui vai alguns pontos importantes:
Se a string que o cara digitar e a string que irá aparecer no edit2 tiverem tamanhos diferentes você não poderá simplesmente incluir letras uma por uma...
isso é portanto impossivel!
pois se a pessoa vai digitar um texto que o programa nao conhece, ele não podera fazer calculos para ajustar isso. exemplo:
se o cara digita ´casa´ e aparece embaixo a palavra ´casarão´. a unica solução seria se o programa calculasse o numero de letras da palavra ´casa´ e fizesse uma média comparando com o numero de letras da palavra ´casarão´, assim isso aconteceria:
Ao digitar no edit1 a letra | no edit2 apareceria a(s) letra(s) C Ca a sa s rã a o
Sacou o que eu quis dizer??
Isso seria até bem simples se não fosse um grave problema: o programa não sabe que o cara vai digitar a palavra ´casa´!
Ele não tem meios de saber quantos caracteres tem a palavra do Edit1 sem que ela tenha sido completamente digitada.
Isso realmente é impossivel!
a não ser que você diga antes de digitar no edit1 quantos caracteres terão sua sentença
PS.: NESSE FÓRUM VOCÊ FAZ PERGUNTAS MUITO INTRIGANTES... CONTINUE ASSIM... :D
Gostei + 0
12/04/2003
Robotizar
vai chamar tipo algo como Eu sei tudo
ai vai ta la digite sua pergunta
ai o cara aperta por exemplo f2, e quando ele faz isso ele está editando a resposta mas para não dar na cara tem que parecer q o cara ta digitando a pergunta
intendi?
Gostei + 0
15/04/2003
Carlos Filho
é...
deu pra sacar +-
mas mesmo assim prevalece o que eu disse na mensagem anterior...
não tem como o programa saber o que a pessoa vai escrever (tamanho da string) até q essa pessoa tenha digitado tudo e tenha pressionado um botão qualquer pra confirmar...
Se voce acha que eu ainda não entendi bem, manda um exemplo BEMMMM explicado...
pra q eu possa entender.,..
é que sou meio tapado mesmo..
Gostei + 0
15/04/2003
Carlos Filho
é...
deu pra sacar +-
mas mesmo assim prevalece o que eu disse na mensagem anterior...
não tem como o programa saber o que a pessoa vai escrever (tamanho da string) até q essa pessoa tenha digitado tudo e tenha pressionado um botão qualquer pra confirmar...
Se voce acha que eu ainda não entendi bem, manda um exemplo BEMMMM explicado...
pra q eu possa entender.,..
é que sou meio tapado mesmo..
Gostei + 0
15/04/2003
Chinelao
O algorítimo é muito simples, vc só tem q pensar...
quebra a cabeça um pouquinho, hj em dia os programadores querem tudo pronto, nunca vi hehehe :wink:
Só uma dica, TENTA USAR MATRIZ.....
depois dessa só limao com açucar... 8)
Chinelao
Gostei + 0
16/04/2003
Carlos Filho
Hummmm
Alguem que, como eu, acha que existem programadores tão bitolados em banco de dados que eles não sabem fazer nada a nao ser copiar, colar e arrastar componentes... Isso é ótimo! acho que vou fazer uma comunidade: OS FÃS DO PASCAL (ou Delphi...) onde só entra quem não gosta de programar banco de dados. Bom, isso é um sonho...
Sobre a pergunta de Robotiza...
Não entendi como uma matriz vai ajudar...
vc entendeu a pergunta dele?
ele quer q a medida q uma pessoa digite uma frase, uma outra apareça, gradativamente a medida q se digita. Mas isso só é possível se o programa já ´souber´ pelo menos quantos caracteres a frase que será digitada tem...
Bom
Explica aí pra gente como faz isso com uma matriz!
deve ser interessantíssimo!
valeu!
Gostei + 0
16/04/2003
Chinelao
Hummmm
Alguem que, como eu, acha que existem programadores tão bitolados em banco de dados que eles não sabem fazer nada a nao ser copiar, colar e arrastar componentes... Isso é ótimo! acho que vou fazer uma comunidade: OS FÃS DO PASCAL (ou Delphi...) onde só entra quem não gosta de programar banco de dados. Bom, isso é um sonho...
Sobre a pergunta de Robotiza...
Não entendi como uma matriz vai ajudar...
vc entendeu a pergunta dele?
ele quer q a medida q uma pessoa digite uma frase, uma outra apareça, gradativamente a medida q se digita. Mas isso só é possível se o programa já ´souber´ pelo menos quantos caracteres a frase que será digitada tem...
Bom
Explica aí pra gente como faz isso com uma matriz!
deve ser interessantíssimo!
valeu![/quote:2830182735]
Ae Ðerek, seria um sonho mesmo... o pessoal agora so sabe arrastar, copiar, colar, é a geração PASTE AND CUT!!!! é foda...
Queria ver se eles tivessem que fazer um simples programinha que cadastra produtos de uma empresa e naum tivessem o PASTE AND CUT, apenas um editor de texto tipo bloco de notas e um compilador pascal ou mesmo C... podia ser até clipper ou cobol que muitos pegavam rabo huahauhau.. :lol:
Pow, se eu contar o segredo fica fácil... eu tive que pensar pra fazer ué...
vou colocar o que eu fiz no meu site e vou postar o endereço aki pra vc´s tirarem uma ideia... (tem q ser final de semana) hehe
aguarda aí que eu volto t+
Chin... :x
Gostei + 0
16/04/2003
Amsdeveloper
Naum precisa disso tudo ai falado anteriormente, faça o seguinte!
no onKeyPress faça:
[b:302a64a948]procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
if (Key = ´I´) or (Key = ´i´) then
Edit1.Text:=Edit1.Text+´D´
else
if (Key = ´O´) or (Key = ´o´) then
Edit1.Text:=Edit1.Text+´M´;
end;[/b:302a64a948]
:P
:D
Gostei + 0
16/04/2003
Mateus
a: string;
I: integer;
begin
I:=I + 1 ;
a:=(Edit2.text[I]);
If(Edit2.text[I] = a) Then
Edit1.text := Edit1.text := ´D´;
oi tudo bem
olha só
o q eu quero é meio dificil de intender mais vamu tentar
tem duas edits no meu form
quando o cara estiver digitando na edit2 na edit1 vai aparecer uma frase sabe tipo assim
a frase é
delphi é o melhor
e supondo q ele vai digitar
olá tudo bem
no edit2...
intaum quando ele digitar a letra ´o´ no edit2 a letra ´d´ aparece no edit1
a ´l´ a ´e´ e assim por diante...
Deu pra inteder???
desde já muito obrigado!!!
Gostei + 0
17/04/2003
Robotizar
FIZ O SEGUINTE
PRIMEIRO PUZ PRA UM LABEL RECONHECER QUANTAS LETRAS TEM EM UM MEMO USANDO UM ON TIMER DEPOIS USANDO OUTRO ON TIMER PUZ Q POR EXEMPLO
IF LABEL1.CAPTION := ´1´ THEN
MEMO1.TEXT:= ´O´;
IF LABEL1.CAPTION := 2 THEN
MEMO1.TEXT:= ´OI´;
E ASSIM POR DIANTE AI USEI UM RANDOM PRA FRASES ALEATORIAS MUITO SIMPLES ... UNS COLEGAS DISSERAM Q DAVA PRA MELHORAR O CODIGO USANDO MENOS DIGITAÇÃO ... MAIS E DAÍ??? ESSE FOI O JEITO Q EU PENSEI E FUNCIONA !!! TA PASSANDO DE BOM NÉ NAUM
VALEU GALERA..
E MEU PROGRAMA É Q NEM AQUELE LUCIFER MESMO SO Q O MEU NAUM TEM ESTE NOME E NEM PALAVRÕES E OUTRA COISA NAUM FAZ AQUELA BARULHEIRA INFERNAL!!!!
Gostei + 0
17/04/2003
Silvino Cavassana
supomos que você já criou uma variável pública chamada FRASE do tipo String e com o conteúdo ´delphi é o melhor´ e que existe o edit1 onde se digita e o edit2 onde será escrita a outra mensagem já definida.
No evento onkeypress do edit1 (onde o cara digita) você coloca
begin
edit2.Text:=copy(FRASE,1,Length(edit1.text))
end;
Gostei + 0
17/04/2003
Rebel_inside
se for que nem o lúcifer, vc faz o seguinte: (levando em consideração que no edit1 o cara está escrevendo e no edit 2 aparece a frase ´remodelada´)
1° passo: crie uma string bem longa com a saudação: ´ó gênio dos gênios, criador do céu e da terra, eu peço humildemente ´ (...) bla bla e bla..
2° passo: no OnCHANGE do edit em que o cara está digitando, você faz o seguinte:
const SBlaBlaBla: ´ó gênio dos gênios, criador do céu e da terra, eu peço humildemente ... ´; procedure TForm1.Edit1Change(Sender: TObject); begin Edit2.Text:= Copy(SBlaBlaBla, 1, Length(TEdit(Sender).Text)); end;
e pronto =)
note que para evitar os Ctrl-C, Ctrl-V, backspace e por ai vai, eu prefiri utilizar o evento OnChange ao invés do KeyDown (ou KeyPress, KeyUp etc)
e também você pode fazer que quando o cara começa a digitar, ele crie uma string com palavras aleatórias.. ou até mesmo frases inteiras aleatórias.. isso é contigo ;)
espero ter ajudado.. se era isso que você queria saber :)
Gostei + 0