解决DBGrid中关于鼠标滚轮的一种方法。

DBGridEh中键滚动事件 DBGridEh让选择的记录不随垂直滚动条滚动而移动 使用Delphi的人都知道,Delphi中的Grid与PB或者其他的Grid有区别,就是在滚动时记录指针会跟着改变。能不能做到像PB中的DataWindow一样滚动时选定记录不改变呢? 立即下载

解决DBGrid的鼠标滚动的方法
1. Add in .h file:

private: // 添加声明
void __fastcall (__closure *OldProc)(Messages::TMessage &Message);
void __fastcall NewProc(TMessage &Message);

 

2. Add in .cpp file:
// 添加以下语句到OnFormCreate事件中
OldProc = DBGrid1->WindowProc;
DBGrid1->WindowProc = NewProc;

 

void __fastcall TForm1::NewProc(TMessage& Message)
{
  if (Message.Msg == WM_MOUSEWHEEL)
  {
    int z = GET_WHEEL_DELTA_WPARAM(Message.WParam);
    Message.Msg = WM_VSCROLL;
    if (z > 0)
      Message.WParam = SB_LINEUP;
    else
      Message.WParam = SB_LINEDOWN;
  }
  OldProc(Message);
}

DELPHI支持鼠标滚轮的DBGRID(可定义滚动及上下滚动事件) 1.鼠标的滚轮支持,即可以直接支持鼠标上下滚动 2.向上滚轮事件(自定义事件) 3.向下滚轮事件(自定义事件) 经本人实测可用,网上找的不是差这个就是差那个,本人综合了一下 立即下载

相关推荐

DELPHI 增加鼠标滚珠事件的两种方法

给鼠标增加滚动事件的两种方法 并提出要注意的地方!

delphi学习点滴——DBGrid的实用技巧

1.隔行不同颜色显示 with TDBGrid(Sender) do begin if (gdSelected in State) or (gdFocused in State) then Canvas.Brush.Color := clAqua else if DataSource.DataSet.RecNo mod 2 = 0 then Canvas.Brush.Color :=

lynnelxl的专栏 1195

DBGridEh 支持Delphi XE2

这个是绝对的破解版,是for delphi XE2的版本,我在delphi XE2 Update 3,安装成功。 安装具体方法: 1.直接运行安装文件安装完毕后. 2.你点按delphi 的component菜单, 在点按install packages再add, 查找目录C:\Program Files\Embarcadero\RAD Studio\9.0\source\EhLib, 在其下有两个设计包,安装即可!当然你还要将路径添加到查找路径中。

delphi dbgrid去除滚动条

//dbgrid去除滚动条 在form.show事件里写 EnableScrollBar(DBGrid1.Handle, SB_VERT, ESB_DISABLE_BOTH); ShowScrollBar(dbgrid1.Handle,SB_BOTH,false);//去掉水平和垂直 ShowScrollBar(dbgrid1.Handle, SB_VERT, false) ;//去掉垂直...

1768

自举电容的工作原理-3句话总结

1、一道面试题 照例,先抛出来一道面试题:“Buck电路的SW引脚通常会放置一颗小电容,这颗电容有什么用?”。这个问题问得比较细,非常考验被面试者的硬件基本功。 2、似懂非懂的答案 有小伙伴可能不太清楚这颗电容的作用,回答不上来。也有小伙伴脱口而出:自举电容,用来做升压的。但后面好像说不出来具体逻辑。 没具体了解过,答不上来,也没啥可惜的。但是了解过一点,但又似懂非懂的这种,给出的答案只是轻轻点水或者千篇一律,那无疑是错过了一个加分项。 3、异步Buck的自举环路组成 既然是针对Buck电路讲自举电容,前面

ltqdxl的博客 3万+

《供应链金融风控模型设计:多维度数据整合与动态风险预警机制》

注:方案突出供应链金融「三流合一」(资金流、物流、信息流)的风控逻辑,通过多维度数据整合与动态预警,解决传统风控中中小企业信用评估难、链条风险传导监测滞后的问题。◦ 构建供应链拓扑图,计算「核心企业违约对上下游企业的影响系数」(如某电子厂商违约时,其前五大供应商的风险权重自动提升40%)• 区块链应用:将核心企业应付账款上链存证,防止「一票多融」欺诈(如某供应商用同一应收账款在多家银行融资)◦ 财务数据:核心企业审计报告、上下游企业纳税数据(增值税发票频次/金额)

2501_91651383的博客 1549

DBGrid不支持鼠标滑轮的解决

      Delphi中的标准控件TDBGrid并不支持鼠标滑轮滚动来移动焦点。但能通过上下键来选择。      想这种不支持A事件但支持B事件的控件,我们可以捕获A事件,并将其转换成B事件发送给控件,在本例中,使用TApplicationEvents控件来捕获滑轮事件,并转换成上下键事件发送给TDBGrid。      添加ApplicationEvents1的OnMessage事件,

夜色浮尘的专栏 1475

MOSFET开关损耗全面讲解:从原理到优化策略

深入剖析MOSFET开关损耗的产生机制,结合实际应用场景,讲解如何通过驱动设计和电路优化降低损耗,提升系统效率。重点关注mosfet在高频开关下的表现与热管理。

weixin_29476595的博客 1058

[愿创]让DBGrid支持鼠标滚轮浏览数据,及去除垂直滚动条!

      DBGrid一直都不支持鼠标中键滚动,有时候想要去除水平滚动条,让我们自己动手制作一个自定义的DbGrid组件吧!      代码如下:unit AddMsgDBGrid;interfaceuses  windows, SysUtils, Messages, Classes, Controls, Grids, DBGrids;type  TAddMsgDBGrid = class(

gencheng的专栏 3344

中小公司无线组网实战:用一台H3C AC和普通三层交换,实现办公网AP统一管理

本文详细介绍了中小型企业如何利用H3C AC控制器与普通三层交换机实现无线AP统一管理的实战方案。通过VLAN规划、DHCP配置和AC控制器设置,构建经济高效的办公网络,解决信号覆盖和连接稳定性问题,特别适合50-200人规模的企业部署。

weixin_42531516的博客 382

大模型训练(1):流水线并行

Gpipe的方法是,在训练时计算和运用的是micro-batch里的均值和方差,但同时持续追踪全部mini-batch的移动平均和方差,以便在测试阶段进行使用。流水线并行的核心思想是:在模型并行的基础上,进一步引入数据并行的办法,即把原先的数据再划分成若干个更小的batch,分批送入GPU进行训练,算一部分就让下一个GPU动起来。从实验结果可知,在关掉NVlinks的情况下,Gpipe一样也能实现随着GPU数量的增加,训练速度也增加的效果。前文说过,随着模型的增加,每块GPU中存储的中间结果也会越大。

呆呆象呆呆的博客 1970

Delphi中的DBGrid如何实现使用鼠标滚轮上下滚动

首先,往窗体上加入一个ApplicationEvents组件,此组件位于additional选项卡内。 然后重写appliEvents组件的OnMessage方法: procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); begin if (DBGrid1.Focu

莫看烟雨的专栏 4354

高效 DEM 拼接

通过以上步骤的系统实施,能够实现高效、准确的大型地理信息系统 DEM 数据拼接,满足复杂和大规模项目的应用需求。

llhllq2015的博客 1033

DBGrid支持鼠标滚轮滚动的解决办法

方法一: 在窗体添加一个TApplicationEvents组件(在Additional中),然后在它的OnMessage事件中添加如下代码:   procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); begin // 当在 DBGrid1 上发生鼠标滚轮事件

iewniq1的专栏 545

CKA-CN考试之路----2

部分知道就可以了,考试不用输入,后面不再复述.这里我们需要将两端内容凭借成1个yaml。执行题目中给的的命令进行测试。

Q先生 242

28、基准剂量法:原理、应用与计算详解

本文详细介绍了基准剂量法(BMD)的原理、在监管机构中的应用以及具体的计算方法。内容涵盖样本量与BMD的关系、主要监管机构如EPA对BMD的应用、BMD的模型选择与数据拟合过程、拟合优度评估、下置信限(BMDL)计算,以及实验设计对BMD结果的影响。同时,还讨论了剂量指标和响应选择的关键问题,为理解和应用基准剂量法提供了全面的参考。

info6的博客 280

如何让DbGrid支持鼠标滚轮滚动 转

在主窗体上加一个ApplicationEvents控件(控件在Additional面板中), 在它的OnMessage事件中加入下述代码,一切搞定~!procedure TFrm_main_usermanager.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); var hWnd: THandle; ...

170

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

让DBGRID支持鼠标滚轮

先在窗全上添加ApplictionEvents控件,在ADDITIONAL页中。然后在ADDITIONAL的onmessage事件中添加如下代码:if (Carrier_db.Focused) And (Msg.message = WM_MOUSEWHEEL) then    begin      if Msg.wParam > 0 then        SendMessage(Carr

阿锋--专栏 954

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

C++Builder DBGrid鼠标滚轮

C++Builder DBGrid鼠标滚轮   如何在dbgrid中实现鼠标滚轮浏览的功能,即鼠标滚轮控制滚动条的功能。 在头文件中 TWndMethod OldWndProc; void __fastcall NewWndProc(TMessage &Message); cpp中 __fastcall TfrmMain::TfrmMain(TComponent*

txk15619567977的专栏 1698

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

彻底解决Delphi的DBGrid控件鼠标滚轮问题

Delphi的DBGrid控件对鼠标滚轮的支持有问题,不仅不能连续滚动,显示的内容还会错误。   在网上找了很多代码段,发现大家都只是针对一个Form页面提出解决方法,而且这些方法都存在一个同样的问题,那就是,如果DBGrid控件里正在进行编辑,则鼠标滚轮根本不起作用。   结合这些方法,本人提出了一个通用的解决方案,这个方案只需要在应用程序的主Form里加入处理程序就可以达到整个应用程序的所

龙腾至尊的专栏 1672

让Delphi的DBGrid支持鼠标轮

  现在的大多数的鼠标都有鼠标轮,比如,当我们浏览网页时,鼠标轮上下移动,网页就自动上下滚动。鼠标轮的确给我们的操作带来很多方便,但是,在Delphi的大多数控件中都只支持 MouseDown,MouseUp,MouseMove等事件,而不直接支持MouseWheel事件,我们在帮助客户设计一个查看程序时就碰到这样的问题。这个查看程序的数据是放在一个DBGrid中的,数据比较多,超出整个屏幕,如果...

weixin_30375427的博客 343

如何让DbGrid支持鼠标滚轮滚动

在主窗体上加一个ApplicationEvents控件(控件在Additional面板中),在它的OnMessage事件中加入下述代码,一切搞定~!procedure TFrm_main_usermanager.ApplicationEvents1Message(var Msg: tagMSG;  var Handled: Boolean);var  hWnd: THandle;  aName:

1292

dbgrid支持鼠标滚轮

也可以发消息         SendMessage(Screen.ActiveForm.ActiveControl.Handle,                     WM_VSCROLL,                     SB_PAGEUP,    //SB_PAGEUP按页上滚,SB_LINEUP按行上滚                     0)       els

ksrsoft的专栏 1160

DBGrid的实用技巧

  DBGrid的实用技巧     1.隔行不同颜色显示wit

.NET&Delphi小站----编程技术的乐园 1002
上一篇: 在C++Builder 中调用OutLook发送邮件
下一篇: 把我们的汉字转换成为以拼音首字母的关键字的方法
ktcserver
博客等级 码龄24年 35粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值