Array
(
)

Mover um Label de um panel para outro

Mario
   - 18 mar 2010

Olá amigos,
Se tenho um Label em um Panel, como posso movê-lo para outro ou retira-lo do Panel e colocar no form?

Att
mario

Douglas Fernandes
   - 18 mar 2010

Em modo de execuçao ?

0
|
0

Mario
   - 18 mar 2010

Sim
em Modo de execução

0
|
0

Robson Catunda
   - 18 mar 2010

Acho que esse link ai pode lhe ajudar:

http://inf.unisul.br/~osmarjr/delphi/exemplos.htm

Nele vc procura por DragDropTB 

é um Exemplo de como arrastar um botão para a Barra de ferramentas

0
|
0

Mario
   - 18 mar 2010

Olá Robson

Mas eu não quero arrastar manualmente.
Dependendo de determinado parametro no me sistema o Label deverá aparecer num Panel ou em Outro.

0
|
0

Pjrm1470
   - 19 mar 2010

Crie a TLabel manualmente.

Deixe uma variavel do tipo TLabel no private do form.
Quando precisar cria-la... crie e defina sua localização.
Exemplo:

#Código


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Panel1: TPanel; //criei um painel para exemplificar.
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    SuaLabel: TLabel; //sua label dinamica
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  SuaLabel := TLabel.Create(Self);
  SuaLabel.Parent  := Panel1; //defina que componente será colocado.
  SuaLabel.Top     := 20;     //defina a localização top
  SuaLabel.Left    := 20;     //defina a localização left
  SuaLabel.Caption := 'Seu Texto Aqui.';
  SuaLabel.Visible := True;   //por precaução setei True.
end;

end.


Veja se lhe ajuda. A ideia seria vc tornar sua label uma variável. Você so precisa ter precisão no "Top" e no "Left". Se não saí tudo fora do lugar.

Att,
pjrm1470.
 

0
|
0

Emerson
   - 19 mar 2010

altere a propriedade Parent e/ou ParentWindow.

0
|
0

Mario
   - 19 mar 2010

Olá Emerson,

sua dica funcionou corremente.

Segue o teste efetuado com sucesso:
- Coloquei dois Panel na tela.
- Coloquei um Label no Panel1
- Para mudar o Label usei:
  label1.Parent := Panel2 ;

Obrigado pela atenção de todos.

Abraço

0
|
0