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

delphi中的DBGRid鼠标滚动事件

Procedure OnMouseWheel(Var Msg :TMsg;var Handled:Boolean);
begin
  if Msg.message = WM_MouseWheel then
  begin
    if Msg.wParam > 0 then
     begin
       if DBGrid.Focused then
       begin
         SendMessage(DBGrid1.Handle,WM_KEYDOWN,VK_UP,0);
       end;
     end
    else
     begin
       if DBGrid.Focused then
         SendMessage(DBGrid1.Handle,WM_KEYDOWN,VK_DOWN,0);
     end;
    Handled:= True;
  end;
end;
需要在Form创建的时候写入
Application.OnMessage:=OnMouseWheel; // 截获鼠标滚动事件


相关文档:

关于delphi Move函数的用法详解

  使用delphi多年,前些天忽然遇到不会string转pbyte,很是失落,此时对于编程基本功的重要性深有体会.这其中用到MOVE函数.
 搞了好一会才搞明白其用法.所以想贴出来帮助需要帮助的人.
var
   s:string;
   ps:Pchar;
   b:pbyte;
   len:integer;
begin
 &nb ......

Delphi中的数组

不论数组元素是什么类型,静态数组的局部变量总会在栈上分配。如果堆栈大小不够将会导致异常。下例暗藏着一个危险的bug
procedure stackover;
var
s:array [0..4100] of string[255];
begin
end; 
delphi默认栈最大为$100000字节,上例中的栈上分配的大侠为256*4100>$10000。测试必然会出现异常Stack overf ......

Delphi 创建目录及写日志文件


Delphi 创建目录及写日志文件
var
TF: TextFile;
LogFile: string;
txt :string;
sysDir:string;
//创建按钮
procedure TForm1.Button1Click(Sender: TObject);
begin
sysDir:=extractfilepath(application.ExeName );
if not directoryexists(sysdir+'log\') then
createdir(sysdir+'log ......

DELPHI开发中好用的快捷键(D2007版)

DELPHI用得不太多,加上脑筋不好使,就记一下最常用对开发效率很有帮助的几个:
Ctrl+鼠标左键:查找定义
Ctrl+Shift+↑:上一操作与其正好相反,由定义查找实现
Ctrl+Shift+空格:在一个函数没有输入参数的括号内按下此快捷键时会出现函数相关参数的提示信息,包括重载的所有函数的信息 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号