hugohhh 0 Denunciar post Postado Julho 1, 2005 Estou com duvida de como fazer um botao só funcionar N vezes, o usuario indicaria quantas vezes num edit??Outra duvida é copiar uma linha de um Memo para outro Memo...Teria 2 memos, Memo1 e Memo2.... Estou querendo copiar sempre a 1a. linha do memo1 e, copiar na linha do memo2, mas quando for copiar outra linha do memo1, esta linha seria adicionada a linha seguinte do memo2???? Este comando ficaria num botão e, este seria aquele botao que funcionaria N vezes.......Outra duvida também é um comando para apagar um linha do Memo2, esta linha poder ser escolhida pelo usuario??? Compartilhar este post Link para o post Compartilhar em outros sites
skywards 1 Denunciar post Postado Julho 2, 2005 Olacom relacao ao botao você pode criar uma variavel global e ir incrementado ela cada vez q o botao for clicado e q quando ele chegar a um determinado valor ele nao funcione mais, tipoprocedure TForm1.Button1Click(Sender: TObject);begin if (click <= 10) then begin comandos . . . click := click + 1; end;end;os comandos do botao soh irao funcionar se click for menor ou igual a 10, ou seja, apos clicar 10 vezes na decima primeira nao ira mais funcionar. Quanto ao memo para trabalhar copiando as linhas em especifico basta você fazer assimMemo2.Lines[linha] := Memo1.Lines[linha];onde linha eh uma variavel do tipo integer.espero q ajude. Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 2, 2005 Valeu aee Skywards....Mas o comando para desativar o botao apos clicar N vezes não funcionou.... Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 2, 2005 quando pus para rodar o programa ele acusou os seguintes errosBuild [Error] dsrnse5.pas(669): Incompatible types [Error] dsrnse5.pas(673): Left side cannot be assigned to [Error] dsrnse5.pas(673): Incompatible types [Fatal Error] Project1.dpr(5): Could not compile used unit 'dsrnse5.pas' Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 2, 2005 A variavel click foi sim declarada, o q não funciona é esta desativação do botao apos apertar N vezes.... Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 2, 2005 Bom tmferreira, o botao ficara desabilitado até que se apague o texto do segundo Memo...... ele voltaria ativar apos apertar um segundo botao.... Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 2, 2005 Usei o seguinte comando para copiar um texto de um memo para outroprocedure TForm1.Button5Click(Sender: TObject);var L1,L2:Integer;BeginL1:=Memo1.Lines.Count-1;L2:=Memo2.Lines.Count-1;Memo2.Lines[L2] := Memo1.Lines[L1];end;O que estou querendo fazer é copiar uma linha do Memo1 e adicionar esta linha no Memo2 e, apos fazer isso, ao adicionar outra linha vinda do Memo1, esta linha ficaria abaixo da anterior que foi adicionada..... Compartilhar este post Link para o post Compartilhar em outros sites
skywards 1 Denunciar post Postado Julho 3, 2005 Olatenta assim com relacao ao botao unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; click: Integer;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);begin if (click > 10) then Button1.Enabled := False else begin comandos . . . Inc(click); end;end;end.quanto ao memo faz como eu havia dito antes usa assimMemo2.Lines[linha] := Memo1.Lines[linha];Inc(linha);e a cada vez q você copiar uma linha incrementa a variavel linha.deste modo q você falou q ta fazendoprocedure TForm1.Button5Click(Sender: TObject);var L1,L2:Integer;BeginL1:=Memo1.Lines.Count-1;L2:=Memo2.Lines.Count-1;Memo2.Lines[L2] := Memo1.Lines[L1];end;você esta apenas verificando a quantidade de linhas do memo e ao mandar copiar esta copiando apenas a ultima linha, a maneira q falo logo acima você especifica a linha do memo2 onde quer copiar e de qual linha do memo1 q quer copiar.ex: digamos q no memo1 você tenhalinha 1linha 2linha 3você pode fazerprocedure TForm1.Button5Click(Sender: TObject);var L1,L2:Integer;BeginMemo2.Lines[0] := Memo1.Lines[2] + #13#10;end;o resultado seria q no memo2 você teria linha 3e o #13#10 serve para dar uma quebra de linha.espero q ajude. Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 3, 2005 Aee Skywards, bom os comandos para desativar o botao funciona, mas logo no 1o. click ele desativa o botao, mesmo colocando > 10....... para este valor de 10, queria substituir um valor qualquer, N por exemplo, que este valor N viria de um Edit....... Para copiar o texto do Memo, o comando que fiz, só copia uma linha, mas tipo estou querendo fazer com que a linha copiada do Memo1 fosse adicionada ao Memo2, sei que o comando MemoN.Lines.Add() adiciona o texto desejado a linha seguinte. Só não estou conseguindo fazer com que adicione no Memo, talvez seja que esteja declarando alguma variavel errada ou algo assim. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 3, 2005 No programa pra desativar um botao, por exemploButton1 - sera desativado apos N clicks neleo valor e N vira de um Edit Compartilhar este post Link para o post Compartilhar em outros sites
skywards 1 Denunciar post Postado Julho 3, 2005 Ola unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; aperta: Integer = 0;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);begin if (aperta > StrToInt(Edit1.Text)) then Button1.Enabled := False else begin //comandos . . . Inc(aperta); end;end;end.espero q ajude. Compartilhar este post Link para o post Compartilhar em outros sites
hugohhh 0 Denunciar post Postado Julho 3, 2005 valeu a todos pela ajuda......... skywards, tmferreira........ Compartilhar este post Link para o post Compartilhar em outros sites