Acessando componentes em outros formulários
Gostaria de saber como faço para acessar componentes em um outro formulário (Winforms), exemplo:
No Form1 tenho um button que chama um Form2 e quando este ultimo
e fechado devo colocar a propriedade textBox1.text dele em uma um
Treeview no Form1 :
Form1.TreeView1.Nodes.Add(Form2.TextBox1.Text) ;
No Delphi VCL era só acrescentar o Form2 na claúsula USES e pronto, mas no WinForms para .NET parece que nada é trivial....
Obrigado!
No Form1 tenho um button que chama um Form2 e quando este ultimo
e fechado devo colocar a propriedade textBox1.text dele em uma um
Treeview no Form1 :
Form1.TreeView1.Nodes.Add(Form2.TextBox1.Text) ;
No Delphi VCL era só acrescentar o Form2 na claúsula USES e pronto, mas no WinForms para .NET parece que nada é trivial....
Obrigado!
Super_bird_79
Curtidas 0
Respostas
Rjun
07/02/2007
No Delphi para WIN 32 o forms normalmente eram auto criados no inicio da aplicação. Coloque o trecho de código em que você está tentando fazer essa operação.
GOSTEI 0
Super_bird_79
07/02/2007
Não era bem isso que eu queria ... com delphi 32 eu já trabalho desde a versão 3 e estou careca (rss de verdade) de saber sobre o tópico acima, o problema é a meleca do .NET como eu faço:
no WinForm1 tenho
uses
WinForm2;
WinForm1.Edit1.Text := WinForm2.Edit3.Text;
no WinForm1 tenho
uses
WinForm2;
WinForm1.Edit1.Text := WinForm2.Edit3.Text;
GOSTEI 0
Rjun
07/02/2007
Provavelmente o objeto que você esta tentando acessar não esteja na area de objetos publicos do seu form. Veja no seu código. Você tem duas opções: colocar seu objeto como público, como era na VCL, o que acho ruim, ou criar uma proprieade que exponha a informação que você quer obter.
GOSTEI 0
Super_bird_79
07/02/2007
OK ! TAMBÉM CONCORDA VOU CRIAR UM
PROPERTY VALOR: STRING READ FVALOR READ SETVALOR;
THANKS A LOT !
PROPERTY VALOR: STRING READ FVALOR READ SETVALOR;
THANKS A LOT !
GOSTEI 0
Rjun
07/02/2007
Outra coisa. Seu form também não vai estar criado. Veja que você so tem a classe. Precisa cria-lo. Por exemplo:
var WinForm1 : TWinForm1; begin WinForm1 := TWinForm1.Create; try Label1.Text := WinForm1.Texto; finally WinForm.Dispose; end; end;
GOSTEI 0