意外注意到这个小细节: procedure TControl.WMLButtonUp(var Message: TWMLButtonUp); begin inherited; // 注意,如果是直接点击Form1,会执行TCustomForm.DefaultHandler(var Message); Read More
posted @ 2015-08-25 20:41 findumars Views(230) Comments(1) Diggs(0)
所以connect一定要做一次连接即可。否则点击一下按钮,会不断弹出多次窗口。另外,也不用管这个对象有没有被实例化,connect都不会出错。 Read More
posted @ 2015-08-25 20:26 findumars Views(674) Comments(0) Diggs(0)
追踪CM_CONTROLCHANGE消息的流向,可以较好的测试代码:procedure TForm1.Button1Click(Sender: TObject);var Image2 : TImage;beginImage2 := TImage.Create(self);Image2.Left :... Read More
posted @ 2015-08-25 19:46 findumars Views(330) Comments(0) Diggs(0)
// 9个显示函数 procedure SetBounds(ALeft, ATop, AWidth, AHeight: Integer); virtual; // 虚函数,important 根据父控件 // 手法:固定不变的模式,或者简单调用,或者简单设置标志位,就不是虚函数。 ... Read More
posted @ 2015-08-25 19:42 findumars Views(421) Comments(0) Diggs(0)
前提条件:要明白在TWinControl有以下四个函数的存在,注意都是虚函数:procedure Invalidate; override;procedure Update; override;procedure Repaint; override; // 相当于前两句的组合procedure Se... Read More
posted @ 2015-08-25 16:37 findumars Views(696) Comments(0) Diggs(0)
procedure TForm1.Button3Click(Sender: TObject);begin if (csOpaque in ControlStyle) then ShowMessage('不透明') else ShowMessage('透明') // Form透明end;proc... Read More
posted @ 2015-08-25 04:25 findumars Views(3774) Comments(0) Diggs(0)