基本的 OOP 问题 Parent 的含义... Parent为包含该控件的父控件,这不是OOP的思想,是‘MS的MDI思想’ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 unit Unit10;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Panel1: TPanel; Panel2: TPanel; procedure Button1Click(Sender: TObject); procedure Panel1Click(Sender: TObject); procedure Panel2Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);begin Button1.Parent := Panel1; Button1.SetBounds(0, 0, Button1.Width, Button1.Height);end;procedure TForm1.Panel1Click(Sender: TObject);begin Button1.Parent := Panel1; Button1.SetBounds(0, 0, Button1.Width, Button1.Height);end;procedure TForm1.Panel2Click(Sender: TObject);begin Button1.Parent := Panel2; Button1.SetBounds(0, 0, Button1.Width, Button1.Height);end;end.这个不是OOP的东西,windows的东西当设置Parent时,会导致delphi调用DestroyHandle,接着调用CreateHandle,重建Button, 在CreateParams时, if Parent <> nil then WndParent := Parent.GetHandle取相应的Parent的Handle, 然后CreateWindowEx, 恐怕不能放到一个很大的按钮上,因为Parent必须是个容器,象:form,panel,groupbox…… >恐怕不能放到一个很大的按钮上,因为Parent必须是个容器,象:form,panel,groupboxThe fact is I put the buttons on a very large button!!!! dbgrid 删除问题? 请问一个DBGrid的问题 提问,运行期加载函数 如何在DBGrid的Cell里屏蔽鼠标右键? 强烈鄙视对所谓的开源代码做手脚!!! 小弟是一个初学者,请大侠帮忙!急!!!!!!!!! 学delphi,学编程,重要的是学编程思想~!! 有什么语句可以同时设定多个控件的属性 大三,能不能到外面找工作? 如何在memo的光标所在处插入一些特殊的符号? 下载的Delphi5没法安装!!!! 30分问这个问题了
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Panel1: TPanel;
Panel2: TPanel;
procedure Button1Click(Sender: TObject);
procedure Panel1Click(Sender: TObject);
procedure Panel2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Parent := Panel1;
Button1.SetBounds(0, 0, Button1.Width, Button1.Height);
end;procedure TForm1.Panel1Click(Sender: TObject);
begin
Button1.Parent := Panel1;
Button1.SetBounds(0, 0, Button1.Width, Button1.Height);
end;procedure TForm1.Panel2Click(Sender: TObject);
begin
Button1.Parent := Panel2;
Button1.SetBounds(0, 0, Button1.Width, Button1.Height);
end;end.
这个不是OOP的东西,windows的东西
当设置Parent时,会导致delphi调用DestroyHandle,
接着调用CreateHandle,
重建Button, 在CreateParams时,
if Parent <> nil then
WndParent := Parent.GetHandle
取相应的Parent的Handle,
然后CreateWindowEx,