随笔分类 - Delphi-消息应用
摘要:作者: 帅宏军 //声明 protected procedure WMDROPFILES(var Msg : TMessage); message WM_DROPFILES; //实现 procedure TFormMain.WMDROPFILES(var Msg: TMessage);var i,
阅读全文
摘要:unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class
阅读全文
摘要:也是看别人写的,但是不容易找到,就转发一篇delphi版本的 function GetLine(X, Y: integer): TPoint;var OldFont : HFont; Hand : THandle; TM : TTextMetric; Rect : TRect;begin Hand
阅读全文
摘要:惭愧,编了这么多年程序,还没用过拖拽功能 这次同事要实现图标互换的功能,让我帮忙看一下,于是趁机研究了一下拖拽事件,发现还是比较简单的 参考了http://topic.csdn.net/u/20081015/14/98eef84c-0d2f-43a7-aa82-eef7028ef4f7.html里3
阅读全文
摘要:在combobox所在的窗口的Formshow事件里调用即可 [delphi] view plain copy procedure SetComboBoxListWidth( AComboBox: TComboBox ); var i: Integer; nMaxLen, nMinWidth: in
阅读全文
摘要:摘要: 本文介绍了使用Windows消息机制实现由不同语言编制的程序之间的相互通讯、联系,并以当前较为流行的两种语言Microsoft Visual C++ 6.0和Borland delphi 5.0为对象,用这两种语言各编制一应用程序,并能很好的通过消息进行交互。 关键字:vc++、delphi
阅读全文
摘要:这里补充一下第一篇文章中提到的拦截关机消息 Delphi消息拦截:http://blog.csdn.net/cwpoint/archive/2011/04/05/6302314.aspx 下面我再介绍一种在控制台程序中拦截关机消息的方法。 使用SetConsoleCtrlHandler函数。经过测试
阅读全文
摘要:Windows消息拦截技术的应用 民航合肥空管中心 周毅 一、前 言 众所周知,Windows程式的运行是依靠发生的事件来驱动。换句话说,程式不断等待一个消息的发生,然后对这个消息的类型进行判断,再做适当的处理。处理完此次消息后又回到等待状态。从上面对Windows程式运行机制的分析不难发现,消息在
阅读全文
摘要:现在很多的应用程序都有这样一种功能,当用户选择最小化窗口时,窗口不是象平常那样最小化到任务栏上,而是“最小化”成一个任务栏图标。象 FoxMail 3.0 NetVampire 3.0等都提供了这样的功能。实现这样的功能实际上并不复杂,在窗口最小化时,窗口会发出WM_SYSCOMMAND消息,你只要
阅读全文
摘要:http://blog.csdn.net/shuaihj/article/details/7046515
阅读全文
摘要:程序缩小到托盘后系统就无法关机(解决方案) 老帅 程序最小化到托盘后,会出现系统无法关闭的问题,常见于WinXP系统中,这里提供一个解决方案!一、解决方案响应系统关机消息procedure WMQUERYENDSESSION(var msg:Tmessage);message WM_QUERYEND
阅读全文
摘要:MSDN中的一个示例代码,步骤就是RegisterHotKey注册热键,然后响应WM_HOTKEY消息 @1:这个是系统热键 [cpp] view plain copy #include "stdafx.h" int _cdecl _tmain ( int argc, TCHAR *argv[])
阅读全文
摘要:击标题栏右边的关闭按钮“红叉”时,程序会向窗口发送WM_CLOSE消息,因此可以截取此消息在窗口关系前做一些提示或者是不允许点击时关闭程序 [cpp] view plain copy case WM_CLOSE: if (...) { PostQuitMessage(WM_QUIT); return
阅读全文
摘要:在WM_KEYDOWN中处理F10(VK_F10)消息总是获取不到,后来用spy++监听窗口消息发现按下F10并没有WM_KEYDOWN消息产生,而是产生了WM_SYSKEYDOWN http://blog.csdn.net/x356982611/article/details/46636507
阅读全文
摘要:有的时候我们要实现一个悬浮窗口,并使该窗口一直显示在桌面的工作区内。即整个窗口要一直显示在屏幕上,不能超出屏幕的上下左右边缘。此功能的实现也不难,我们需要自己写代码来响应窗口的WM_WINDOWPOSCHANGING消息,话不多说,详细代码如下供参考: 新建一个工程,并把下面代码拷贝到工程中,运行…
阅读全文
摘要:FindWindow(lpClassName, {窗口的类名}lpWindowName: PChar {窗口的标题}): HWND; {返回窗口的句柄; 失败返回 0}//FindWindowEx 比 FindWindow 多出两个句柄参数:FindWindowEx(Parent: HWND; {要
阅读全文
摘要:Delphi的VCL框架在创建应用时TApplication是一个自动创建的隐藏窗口,其它创建的窗口是自动以该窗口为窗口,这就导致创始的主窗口在任务栏的系统菜单只有三项,只要在主窗口的Create事件中将系统菜单用Application的系统菜单替换,并将SysCommand消息转发到主窗口就正常了
阅读全文
摘要:http://blog.csdn.net/yanjiaye520/article/details/6736069 在做登录窗口时一般都是无标题栏,窗口不能被鼠标拖动, 上面的过程可以拖动窗体,结合application.onmessage可时间点任何地方移动窗体 http://blog.csdn.n
阅读全文
摘要:其实不论什么方法,归根揭底都是通过传递对象的指针来达到效果的。 方法一: procedure SendString(strMSG: string);var Data: tagCOPYDATASTRUCT; pBuf: PChar;begin GetMem(pBuf, Length(strMSG) +
阅读全文
摘要:如何让DbGrid支持鼠标滚轮滚动 在主窗体上加一个ApplicationEvents控件(控件在Additional面板中), 在它的OnMessage事件中加入下述代码,一切搞定~! procedure TFrm_main_usermanager.ApplicationEvents1Messag
阅读全文