Acessando Componente em um Tabsheet

01/07/2008

0

Estou criando um programa que cria vários Tabs dinnamicamente, pois não sei quantas tabs serão necessárias. Cada TabSheet, que estão dentro de um PageControl, possui um Edit. Eu criei um frame e coloquei o edit e sempre adiciono o frame quando preciso de uma nova aba. A minha questão é: Como posso retirar o valor do Edit que é diferente em cada aba?

Tentei o seguinte:

PageControl1.ActivePage.Components[0].Components[0].Text

Sendo o primeiro components o frame e o segundo o edit. Entretanto, não deu certo.

E2003 Undeclared identifier: ´Text´


Renatorm

Renatorm

Responder

Posts

01/07/2008

Altingon

Eu fiz o codigo abaixo para quando o usuario teclar F5 e o componente for do tipo data ele joga a data atual, a lógica seria +- essa...adapte para vc..

 
for i:=0 to Screen.ActiveForm.ComponentCount-1 do
  if Screen.ActiveForm.Components[i] is TJVDateEdit then
    begin
        if (Screen.ActiveForm.Components[i] as  TJVDateEdit).Focused = true then
         (Screen.ActiveForm.Components[i] as TJVDateEdit).Date := now;
    end;


O segredo é perguntar se o componente é do tipo texto....


Responder

01/07/2008

Renatorm

Muito obrigado, funcionou direitinho aqui. Só para complementar meu código ficou assim:

if (PageControl1.ActivePage.Components[0].Components[0] is TEdit) then
  Showmessage(PageControl1.ActivePage.Components[0].Components[0] as TEdit).Text);


Fiz esse código ai só para ver se estava pegando o valor do campo certo. Muito Obrigado [b:0e3d372f2a]altingon[/b:0e3d372f2a]!


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar