Fórum criando popupmenus em run-time... como fazer? #228582
28/04/2004
0
e nela speedbuttons .. q vou criando em run-time ...
ok ...
como eu faço pra por ex ... qndo clickar com o botao direito encima de um speedbutton ... ele abrir um popupmenu com uma opçao assim fechar ... ae qndo eu clickar no fechar do popupmenu ... ele dar um free nesse speedbutton clickado?
valeuz
Salsa
Curtir tópico
+ 0Posts
28/04/2004
Motta
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, Menus;
type
TForm1 = class(TForm)
Button1: TButton;
PopupMenu1: TPopupMenu;
del1: TMenuItem;
procedure Button1Click(Sender: TObject);
procedure del1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var sb : TSpeedButton;
begin
sb := TSpeedButton.Create(Self);
with sb do
begin
sb.PopupMenu := PopupMenu1;
sb.Visible := True;
sb.Parent := Self;
sb.Top := Random(Self.Width);
end;
end;
procedure TForm1.del1Click(Sender: TObject);
begin
if PopupMenu1.PopupComponent is TSpeedButton then
TSpeedButton(PopupMenu1.PopupComponent).Free;
end;
end.
é mais fácil criando o pop em desenho..[/code]
Gostei + 0
29/04/2004
Salsa
Gostei + 0
29/04/2004
Nildo
Gostei + 0
29/04/2004
Motta
para saber o que/quem chamou
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Buttons, Menus;
type
TForm1 = class(TForm)
Button1: TButton;
PopupMenu1: TPopupMenu;
del1: TMenuItem;
procedure Button1Click(Sender: TObject);
procedure del1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var sb : TSpeedButton;
begin
sb := TSpeedButton.Create(Self);
with sb do
begin
sb.PopupMenu := PopupMenu1;//<<--atribui o pop
sb.Visible := True;
sb.Parent := Self;
sb.Top := Random(Self.Width);
end;
end;
// logica criada em desenho
// PopupComponent é o comp. que chamou
procedure TForm1.del1Click(Sender: TObject);
begin
if PopupMenu1.PopupComponent is TSpeedButton then
TSpeedButton(PopupMenu1.PopupComponent).Free;
end;
end.
Gostei + 0
29/04/2004
Salsa
function TMainForm.popup: string;
var pop: TsuiPopupMenu;
P: TPoint;
begin
pop := TSuiPopupMenu.Create(self);
GetCursorPos(P);
pop.Popup(P.X,P.y);
end;
mas nao entendi ainda como eu adiciono um item no popup q eu criei .. pra depois saber se ele foi ckickado ou nao :(
Gostei + 0
29/04/2004
Salsa
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)