***头疼的问题,哪位能帮一下忙??? 我想点击一个按钮,调用image的onmousedown,不点击的话就不调用,即只有再次点击按钮时才调用这一事件。请问咋办? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 直接在按钮的OnClick事件中 Image1MouseDown(参数) 不知道你是怎么写的?我写了一个,可以用的:procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin showmessage('mouse down');end;procedure TForm1.Button1Click(Sender: TObject);begin Image1MouseDown(Self,mbLeft,[ssShift] ,0,0);end; 还是不行嘛。我想是线的功能是:点击按钮,再点击image产生一个memo,在上面输入文字后点击‘确定’,memo消失。但我在点击image时,memo又出现了。我是想点一下按钮,memo出现,不点击就没有。以下是源代码:type TForm1 = class(TForm) Button1: TButton; Button5: TButton; Panel1: TFlatPanel; Image1: TImage; Button2: TButton; Button6: TButton; procedure Button1Click(Sender: TObject); procedure Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure Button5Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button6Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1; memo:tmemo; button3:tbutton; button4:tbutton;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);begin memo:=tmemo.Create(self); memo.Parent:=panel1; memo.height:=100; memo.Width :=152; memo.top:=200; memo.Left :=100; button3:=tbutton.Create(self); button3.Parent :=memo; button3.Height :=30; button3.Width :=75; button3.Top :=70; button3.Left :=0; button4:=tbutton.Create(self); button4.Parent :=memo; button4.Height :=30; button4.Width :=75; button4.Top :=70; button4.Left :=76; button3.Caption :='确定'; button4.Caption :='取消'; image1mousedown (self,mbleft,[ssshift],0,0); memo.Visible :=false; button3.Visible :=false; button4.Visible :=false;end;procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin memo.left :=x; memo.Top :=y; memo.Visible :=true; button3.Visible :=true; button4.Visible :=true; button3.OnClick :=button5.OnClick ; button4.OnClick :=button6.OnClick;end;procedure TForm1.Button5Click(Sender: TObject);var s:array[0..10]of string; i:integer;begin image1.Picture.bitmap.PixelFormat :=pf24bit; image1.canvas.Font.Height :=30; image1.Canvas.Brush.Style :=bsclear; i:=0; while (memo.Lines [i]<>'')do begin s[i]:=memo.Lines[i]; image1.Canvas.TextOut(memo.left,memo.Top+i*20 ,s[i]+#13); i:=i+1; end; memo.Visible :=false;end;procedure TForm1.Button2Click(Sender: TObject);begin memo.Visible :=false; button3.Visible :=false; button4.Visible :=false;end;procedure TForm1.Button6Click(Sender: TObject);begin memo.Visible :=false; button3.Visible :=false; button4.Visible:=false;end; 小问题 const 为什么字段没有全部显示出来? 在Edit中有一行汉字:中华人民共和国。我想…… D版的兄弟同胞们帮个忙 如何使用QReport和RAVE做报表? 有挑战性,如何在DBGrid的中每一行动态地一个checkbox? 如何读取快捷方式(*.lnk)所指向的目标呢? RZSplitter分割控件使用问题 delphi dbgrid怎么做批量删除? 请问有没有将delphi的exe文件转换成dll文件的工具,重谢 ********问一个CORBA问题********* 如何解决在引用别名时delphi提示输入用户名和密码的问题
Image1MouseDown(参数)
Shift: TShiftState; X, Y: Integer);
begin
showmessage('mouse down');end;procedure TForm1.Button1Click(Sender: TObject);
begin
Image1MouseDown(Self,mbLeft,[ssShift] ,0,0);
end;
type
TForm1 = class(TForm)
Button1: TButton;
Button5: TButton;
Panel1: TFlatPanel;
Image1: TImage;
Button2: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Button5Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;
memo:tmemo;
button3:tbutton;
button4:tbutton;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
memo:=tmemo.Create(self);
memo.Parent:=panel1;
memo.height:=100;
memo.Width :=152;
memo.top:=200;
memo.Left :=100;
button3:=tbutton.Create(self);
button3.Parent :=memo;
button3.Height :=30;
button3.Width :=75;
button3.Top :=70;
button3.Left :=0;
button4:=tbutton.Create(self);
button4.Parent :=memo;
button4.Height :=30;
button4.Width :=75;
button4.Top :=70;
button4.Left :=76;
button3.Caption :='确定';
button4.Caption :='取消';
image1mousedown (self,mbleft,[ssshift],0,0);
memo.Visible :=false;
button3.Visible :=false;
button4.Visible :=false;
end;procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
memo.left :=x;
memo.Top :=y;
memo.Visible :=true;
button3.Visible :=true;
button4.Visible :=true;
button3.OnClick :=button5.OnClick ;
button4.OnClick :=button6.OnClick;
end;procedure TForm1.Button5Click(Sender: TObject);
var
s:array[0..10]of string;
i:integer;
begin
image1.Picture.bitmap.PixelFormat :=pf24bit;
image1.canvas.Font.Height :=30;
image1.Canvas.Brush.Style :=bsclear;
i:=0;
while (memo.Lines [i]<>'')do
begin
s[i]:=memo.Lines[i];
image1.Canvas.TextOut(memo.left,memo.Top+i*20 ,s[i]+#13);
i:=i+1;
end;
memo.Visible :=false;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
memo.Visible :=false;
button3.Visible :=false;
button4.Visible :=false;
end;procedure TForm1.Button6Click(Sender: TObject);
begin
memo.Visible :=false;
button3.Visible :=false;
button4.Visible:=false;
end;