zoukankan      html  css  js  c++  java
  • 【借鉴】delphi paintbox 滚轮

    1.在窗体的public里写procedure WmMouseSheel(var   msg:TWMMOUSEWHEEL);message   WM_MOUSEWHEEL;函数。
    具体的实现部分如下:

      procedure   TMapChildFrm.WmMouseSheel(var   msg:   TWMMOUSEWHEEL);
    var
      pt: TPoint;
    begin
      GetCursorPos(pt);         //{这是获取的相对于屏幕的坐标}
      pt := ScreenToClient(pt); //{转换成本地坐标}

      if (pt.X>ScrollBox1.Left)
      and(pt.X<ScrollBox1.Left+paintbox1.Width)
      and(pt.y>ScrollBox1.Top)
      and(pt.y<ScrollBox1.Top+paintbox1.Height) then
      begin
        if   msg.WheelDelta>0   then
        begin
          Zoom(@drawdata, 2);
          AutoFillMap;
          repaint;
        end
        else
        begin
          Zoom(@drawdata, 1 / 2);
          AutoFillMap;
          repaint;
        end;
      end;
    end;(已实践)

    2.继承paintbox,写个滚轮事件。(未实践);

  • 相关阅读:
    阿里云短信服务工具类
    vue.config.js
    elementui Tree 树形控件增删改查
    vue 实时显示年月日时分秒星期上下午
    1553:【例 2】暗的连锁
    CF825G Tree Queries
    最短母串
    寻找好串
    无限链计数
    异或运算
  • 原文地址:https://www.cnblogs.com/zhangzhifeng/p/2110522.html
Copyright © 2011-2022 走看看