易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi 动态控制窗口置顶且界面不闪

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE)
else
SetWindowPos(Handle, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE);
end;//使用Self.FormStyle := fsStayOnTop;会使界面闪烁一下

为什么使用FormStyle会出现界面闪烁呢?跟踪了一下代码,我觉得TWinControl.UpdateShowing有很大嫌疑……
关于SetWindowPos的使用可从 delphi 提供的帮助得知。
The SetWindowPos function changes the size, position, and Z order of a child, pop-up, or top-level window. Child, pop-up, and top-level windows are ordered according to their appearance on the screen.
BOOL SetWindowPos(
    HWND hWnd, // handle of window
    HWND hWndInsertAfter, // placement-order handle
    int X, // horizontal position
    int Y, // vertical position
    int cx, // width
    int cy, // height
    UINT uFlags  // window-positioning flags
   );
HWND_NOTOPMOST Places the window above all non-topmost windows (that is, behind all topmost windows). This flag has no effect if the window is already a non-topmost window.
HWND_TOPMOST Places the window above all non-topmost windows. The window maintains its topmost position even when it is deactivated.
SWP_NOMOVE Retains the current position (ignores the X and Y parameters).
SWP_NOSIZE Retains the current size (ignores the cx and cy parameters).


相关文档:

delphi 多态

 什么是多态,字面意思就是“多种形态”,用对象来讲就是子类继承基类,而不同的子类又分别对基类进行功能的扩展。
多态在Object Pascal中是通过虚方法实现的(Virtual Method),在Object Pascal中基类的虚方法是可以被派生类覆盖(Override)的 ......

Delphi 设计模式:《HeadFirst设计模式》Delphi7代码

没有应用状态模式的代码
1. 工程文件
program Project1;
{$APPTYPE CONSOLE}
uses
uGumballMachine in 'uGumballMachine.pas';
var
aGumballMachine: TGumballMachine;
begin
aGumballMachine := TGumballMachine.Create(5);
aGumballMachine.InsertQuarter;
aGumballMachine.TurnCrank;
Writeln; ......

DB2 和 Delphi 7 — SOAP 和数据库 Web 服务

 构建 Windows SOAP 服务器应用程序
首先在 Windows 上构建服务器,然后在 Linux 上构建客户机。(如果需要,可以使用其它方法 — 或者将它们全部构建在 Windows 或 Linux 上。)对于 Windows SOAP 服务器,启动 Delphi 7 Enterprise,执行 File -> New -> Other,转至对象资源库(Object Repository)的 ......

DELPHI如何响应事件

由于项目需要,开始学习DELPHI,并自己编写代码来测试用VC写的DLL,觉得自己又多掌握了一些,不对的地方希望指正,我会好好学习
1、响应键盘事件:
因为KeyPreview默认是 False;我们这里需要响应键盘事件的话,需要将其修改为True;
所以KeyPreview:=True; 这对一些快捷键会有用。
在FormCreate这个函数里修改KeyPrevie ......

Delphi 数据类型

 一、整数类型
类型 所占字节数 取值范围
byte 1 0-255
word 2 0-65535
shortint 1 -128-127
smallint 2 -32768-32767
integer 4 -214748648-214748467
longint 4 -214748648-214748467
cordinal 4 0-2147483647
二、实数类型
类型 所点字节数 取值范围
Real 6 ±2.9×10的负39次方到1.7× ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号