procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
我使用的是OnMouseDown事件 程序要实现的是:在鼠标单击窗体的位置上建立按钮
并用标题表明确切的位置 可为什么要错啊 我是个菜鸟 什么都不懂 请大家多多指教 小妹不胜感激~~~~
Shift: TShiftState; X, Y: Integer);
var
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
我使用的是OnMouseDown事件 程序要实现的是:在鼠标单击窗体的位置上建立按钮
并用标题表明确切的位置 可为什么要错啊 我是个菜鸟 什么都不懂 请大家多多指教 小妹不胜感激~~~~
解决方案 »
- 请教:如何实现边读文件,边发送至串口
- 如何拦载有dbgrideh的自动提交数据的功能
- 同一条赋值语句,要重复使用,能否像定义公共变量一样定义一次就可以不断使用?
- 如何用unit2 调用unit1中的代码?
- 请问什么是INI文件?做什么用?
- 用delphi写这样一个软件要多少人力和成本?
- dxDBGrid问题?
- Report Builder中打印中文折行时经常出现乱码,请问如何解决?
- 用urlConnection向用delphi做的http服务器post数据。为什么服务器会接收到两个完全一样的请求
- StringGrid中用回车来作焦点切换,如何实现?
- 有沒有什麼工具可以使圖標佔用的空間最小,如壓縮成某種格式?
- 有什么简单的方式清空一个文本文件?
Shift: TShiftState; X, Y: Integer);
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
Shift: TShiftState; X, Y: Integer);
//var
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
Shift: TShiftState; X, Y: Integer);
//var 多了
var
Btn:TButton;
begin
// Btn:=TButton.Create(Form1); 这里面使用Form1不是好习惯
Btn:=TButton.Create(Self);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
Shift: TShiftState; X, Y: Integer);
Procedure CreateBtn;
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;
begin
CreateBtn;
end;
//来抢分的,嘻嘻
var Btn:Tbutton;
Btn:=Tbutton.create(self);
Btn.Parent:=Form1;
这样之后才能用。我以前也遇到过这样的问题呢.
Btn:=TButton.Create(Self);
//这也不是好习惯吧, pazee(耙子) ,如果返上边的那种写法的看,这种就会死QQ的,嘻嘻
看在什么情况下,对吗?
Uses StdCtrls;
嘻嘻,嘻嘻;一起学习了啦;
To jan2002(阿吉)
只要有一个Std控件,StdCtrls就自动的加上去了;
Button: TMouseButton; 这一句又是什么意思? 有什么用?
Shift: TShiftState; 这一句又是什么意思? 有什么用?
X, Y: Integer 这一句又是什么意思? 有什么用?
小妹现在是从"零"开始学习Delphi 才学几个星期 总是要遇到好多好多这样那样的问题 我一遇到问题 就不知道该怎么办 身边也没有老师可以指点指点我 只好请教大家了 希望GG多帮帮我这个入门菜鸟~_~
Button:TmouseButton://这个判断建值是什么..
你可以查一查:
TShiftState = set of (ssShift, ssAlt, ssCtrl,
ssLeft, ssRight, ssMiddle, ssDouble);
TMouseButton = (mbLeft, mbRight, mbMiddle);这些就是了;
你真是气死我了 你~~~~~~~~~~~你~~~~~~~~~~~~~~~
你不知道我才学Delphi几个星期呀 请说国语好么???
你说得真是太精辟了!! 我一句都看不懂!!!!!!!!!!!!!!!!!!!
我是个菜鸟耶~~~~~
var
button : TButton;
i:integer;
begin
button:= TButton.Create (self);
button.Parent := form1;
button.name := 'buttonxx';
button.Left :=250;
button.Top:=130;
button.Width :=80;
button.Height :=30;
button.OnClick :=newbutton;
end;procedure tform1.newbutton(sender:tobject);
begin
showmessage('ok');
end;另外,别忘记了声明procedure newbutton(sender:tobject);
这句话一点错也没有!!你想:在类的方法里对对象进行操作,这本身就违背面向对象的原则!!可能这么说你不觉的那么换个方式,你看下面的代码VAR Form1,Form2:Tform1;
……procedure TForm1.FormCreate(Sender: TObject);
begin
self.caption:= '百合MM';
end;这样,所有的对象创建以后,caption都是‘ 百合MM ’
而如果
procedure TForm1.FormCreate(Sender: TObject);
begin
Form1.caption:= '百合MM';
end;结果是什么呢?只有Form1的caption是‘ 百合MM ’
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
Btn:TButton;
begin
Btn:=TButton.Create(Form1);
Btn.Parent:=Form1;
Btn.Left:=X;
Btn.top:=Y;
Btn.Width:=Btn.Width + 50;
Btn.Caption:=Format('Button at %d,%d',[X,Y]);
end;end.