首页 > 学院 > 开发设计 > 正文

制作固定大小的Form

2019-11-17 05:15:12
字体:
来源:转载
供稿:网友

  固定的Form像一个对话框,何不试试下面的语句?

C++ Builder

请参照Delphi的例子

Delphi

您可以覆写 CreateParams() 这个 TWinControl 的虚拟程序, 改变 form的 wc.Stylee, 将 WS_SYSMENU 这个旗标解除, 这样, 就不会有左上角的

SystemMenuBox 了.

至於不能移动.缩小/放大, 可以自已拦下 WM_NCHITTEST, 然後一概回应滑鼠点在视窗

Client 区域, 相信这个视窗就呆呆的不会动了.

详情可以查一下 Win32API Help 的 CreateWindow() 与 WM_NCHITTEST 的说明.

unit Unit1;
interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls,

Forms, Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

PRocedure Button1Click(Sender: TObject);

private

{ Private declarations }

procedure WMNCHitTest(var Msg: TMessage); message WM_NCHITTEST;

protected

procedure CreateParams(var Params: TCreateParams); override;

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation
{$R *.DFM}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表