改变窗口大小时窗口会抖动,我用lockwindowupdate(handle)/lockwindowupdate(0)后, 改变窗口大小时桌面会抖动,怎幺办呢??
解决方案 »
- 我用idftp做的上传,打包后客户不能用!
- 请问DLL文件的源码丢失如何解救
- 请教关于AdoQuery数据集控件的两个问题
- UDP和TCP有什么区分?TServerSocket , TClientSocket 是什么方式传输?
- 奇怪的四舍五入函数(有趣的话题)
- 全副身家求一控件,急!!!!!!!!!!!!
- BDE组件里的Table控件的属性Databasename里的东西是什么?怎么用??
- 如何给DBGRID增加这样的列?
- Activex如何传出参数?
- 请教:一个关于SQL的问题....
- delphi5/针式打印机 如何在win2000下打印自定义纸张?
- 动态建立了一个新sql server数据库,但它的名称不知道,怎样把这个数据库设为当前数据库
lockwindowupdate(0);
有问题?
--------------------------------------------------------------------------------
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, ComCtrls;type
TForm1 = class(TForm)
Panel1: TPanel;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure WM_SIZE(var Msg: TMessage); message WM_SIZE;
procedure WMSysCommand(var Msg: TMessage); Message WM_SYSCOMMAND;
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.WMSysCommand(var Msg: TMessage);
begin
if Msg.WParam = SC_MAXIMIZE then
begin
LockWindowUpdate(Handle);
Panel1.Align := alNone;
Memo1.Align := alNone;
end;
inherited;
end;procedure TForm1.WM_SIZE(var Msg: TMessage);
begin
if Msg.WParam = SIZE_MAXIMIZED then
begin
Panel1.Align := alClient;
Memo1.Align := alClient;
LockWindowUpdate(0);
end;
inherited;
end;procedure TForm1.FormCreate(Sender: TObject);
begin
Panel1.Align := alClient;
Panel1.Color := clGray; //这样做是为了能看清楚一些,这还仅仅是一个小例子,如果Form上控件
//众多,则闪烁十分明显
Memo1.Align := alClient;
end;end.