📄 00203.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>1</title>
</head>
<body bgcolor="#000000" text="#FFFFFF" link="#FFFFFF">
<p align="left"><span style="BACKGROUND-COLOR: #ff0000"><a href="00203.zip">源程序下载</a></span><b><span style="background-color: #000080"><br>
</span><span style="background-color: #000000"><br>
</span><span style="background-color: #000080"><a name="1"></a>1:程序启动画面</span></b>
<br>
在启动程序之前出现启动画面的方法多得是,但有些是调用“记时器”来延时的,这种方法有时拖慢了程序的启动速度,下面介绍又一方法,给大家参考对比一下。<br>
建一个启动封面窗体,假设为Form2,先设置好BorderIcons、BorderStyle、FormStyle、Position,接着在窗体上加入图片框、文本框,设置好后在菜单里选Project里的Options,把Form2从Auto-create forms里转到Available forms。再接着就是按Ctrl+F12键,选Project1,出现工程单元,其内容如下<br>
Application.CreateForm(TForm1, Form1);<br>
Application.Run;<br>
<br>
在Application.CreateForm(TForm1, Form1); 前加入如下语句:<br>
form2:=tform2.create(application);<br>
form2.Show;<br>
form2.Update;<br>
然后在Application.Run;前面加入如下语句:<br>
form2.hide;<br>
form2.free;<br>
<br>
在Form1的OnCreate事件中Delay过程,是为了延时,让程序处效果,在实际应用过程中,可以把这句去掉。<br>
<span style="background-color: #000000"><br>
</span>
<b><span style="background-color: #000080"><a name="2"></a>2:控制窗体</span></b>
</p>
<p><br>
如何在 Delphi 中把 Form 控制成不能放大/缩小/移动/关闭?1、把 Form 的 BorderIcons 下的几个子属性值全改为 False;2、修改 Form 的 BorderStyle 的值为bsSingle ;3、为了让窗口不能移动,可以自已拦下 WM_NCHITTEST 消息, 对该消息的处理为:一律回应鼠标点在窗口的 Client 区域, 相信这个视窗就呆呆的不会动了。在Form的Private中申明一个过程Procedure WMNCHitTest(var Msg: TMessage); message WM_NCHITTEST;,其定义如下:<br>
procedure TForm1.WMNCHitTest(var Msg: TMessage);<br>
begin<br>
inherited; // 这样,移动就不可能了...<br>
Msg.Result := HTCLIENT;<br>
end;<br>
就可以实现你的要求了,别忘了,这时候,你就没有办法去关闭窗口了,必须有个命令去关闭窗口,在这个例子里面,笔者是添加了Button1:TButton,响应OnClick事件时去关闭窗口。<br>
<br>
<b><span style="background-color: #000080">
<a name="3"></a>
3:查阅可视窗口标题 <br>
</span></b> 下面只是举出一个例子提供参考:运用API函数GetWindow()配合GetWindowText()逐一查出各视窗的标题当击打Button2时,执行结果显示到Memo1中去。<br>
procedure TForm1.Button2Click(Sender: TObject);<br>
var<br>
hCurrentWindow: LongWord;<br>
szText: array[0..254] of char;<br>
begin<br>
hCurrentWindow := GetWindow(Handle, GW_HWNDFIRST);<br>
while hCurrentWindow <> 0 do<br>
begin<br>
if GetWindowText(hCurrentWindow, @szText, 255)>0 then<br>
Memo1.Lines.Add(StrPas(@szText));<br>
hCurrentWindow:=GetWindow(hCurrentWindow, GW_HWNDNEXT);<br>
end;<br>
end;<br>
<br>
<span style="background-color: #FF0000"><a href="00203.zip">源程序下载</a></span>
</p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -