spin constrol与edit 控件共用

第一步:创建一个spin control,属性 Set Buddy Integer 设为 True,绑定控件为m_spinPollingTime

创建一个edit control,ID为IDC_EDIT_POLLING_TIME, 属性改为只是数字与不可修改, 绑定值为 m_nPollingTime

第二步:在对话框的初始化函数OnInitDialog()里添加

  1. m_spinPollingTime.SetBuddy(GetDlgItem(IDC_EDIT_POLLING_TIME)); // 关联到edit控件
  2. m_spinPollingTime.SetRange(1,6);//设置范围
  3. m_spinPollingTime.SetBase(10);//设置进制数,只能是10进制和16进制

第三步:可以添加一个spin控件的点击事件,自动生成函数如下,并添加代码:

(这一步应该可以不用,但我添加了,也没有仔细测试)

  1. void CFlapLaneDlg::OnDeltaposSpinPollingTime(NMHDR *pNMHDR, LRESULT *pResult)
  2. {
  3. LPNMUPDOWN pNMUpDown = reinterpret_cast<LPNMUPDOWN>(pNMHDR);
  4. // TODO: 在此添加控件通知处理程序代码
  5. UpdateData(true);
  6. if(pNMUpDown->iDelta == -1) //值-1点击了Spin的往下箭头
  7. {
  8. --m_nPollingTime;
  9. }
  10. else if(pNMUpDown->iDelta == 1) //值为1点击了Spin的往上箭头
  11. {
  12. ++m_nPollingTime;
  13. }
  14. UpdateData(false);
  15. *pResult = 0;
  16. }

来自为知笔记(Wiz)

时间: 2024-12-14 01:56:35

spin constrol与edit 控件共用的相关文章

WIN32窗口子类化----自定义Edit控件的右键菜单

前言 Win32应用程序中,子控件的消息都是分发到其父窗口的消息处理函数中去了,这对于我们需要自定义子控件的某些特性时时十分不方便的,还好,Windows为我们提供了控件子类化的相关接口API.核心的思想是:通过获取子控件的消息处理函数地址,设置子控件的消息处理函数到自己定义的函数里,也就是Get/SetWindowLong API的使用. 测试代码 这里是一个简单的测试程序,在控制台程序中创建一个对话框,然后对话框上有一个EDIT控件(资源编辑器里拖入的,不多说),子类化EDIT控件,右键弹出

delphi Components[i]清除所有edit控件中的内容

(* 一般的清空combobox方法 combobox1.clear; ... combobox9.clear; *) procedure TForm1.Button1Click(Sender: TObject); var i: integer; begin for i:=0 to self.ComponentCount-1 do begin if self.Components[i] is TCombobox then TCombobox(self.Components[i]).clear;

关于Edit控件focused状态,调用自己编写的键盘

一.涉及编写自己的自己的键盘 由于只使用英文字母跟数字等简单的字符而已,没有包括全角或者中文字符.所以直接使用跟手机的输入密码键盘一样的键盘即可. 遇到的问题:1.使用法keybd_event()的方式进行发送消息,不管发送大小写字母都是显示小写字母 2.键盘不能有焦点状态,否则使用的keybd_event则无法将字符发送给edit框.如果使用有焦点的状态则会导致edit控件跟我自己编写的键盘耦合性太大. 3.由于使用duilib的tilelayout而出现键盘的所有按键无法正常对齐. 解决方案

Iocomp控件教程之Analog Display—模拟显示控件(优于EDIT控件)

Analog Display是简洁的显示控件.用于显示指定准确度和单位的模拟值(实数),能够将准确度设置为0.使显示结果为整数. 第一步:建立MFC对话框 第二步:插入AnalogDisplay控件 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" > watermark/2/text/aHR0cDovL

修改Delphi 10.1.2 edit控件在android的复制、剪切和粘贴样式

Delphi 10.1.2 edit控件在android默认的复制.剪切和粘贴样式太丑,经悟能-DelphiTeacher的提示,用最简单的代码修改后稍有改观. 默认的样式: 修改后的样式: 修改FMX.Platform.Android.pas 找到procedure TWindowManager.ShowContextMenu(const ItemsToShow: TContextMenuItems),按下面的红字增加Copy.cut和Paste button的setBackgroundCol

自定义Edit控件控制输入范围

1 //自定义Edit,实现十六进制输入控制,使用OnChar()函数实现 2 //MyEdit.h 3 #pragma once 4 5 class CMyEdit : public CEdit { 6 DECLARE_DYNAMIC(CMyEdit) -----------------------① 7 8 public: 9 CMyEdit(){}; 10 protected: 11 DECLARE_MESSAGE_MAP() ----------------------------② 1

C++ 一个程序获取另一个程序Edit控件的内容

//一个程序获取另一个程序Edit控件的内容 //根据指定程序的标题名获取改程序窗口的句柄 HWND hWnd=::FindWindow(NULL,"zhang001"); if(hWnd) { MessageBox("get windows"); //根据窗口句柄获取EDIT控件的ID,但是这个ID是通过VS工具spy++获取的 HWND h = ::GetDlgItem(hWnd,0x3E9); if (h!=NULL) { CString str0; //要知

MFC学习之EDIT控件初始化

//四种方法为EDIT控件初始化     //调用系统API     HWND hEidt = ::GetDlgItem(m_hWnd,IDC_EDIT1);     ::SetWindowText(hEidt,L"0.");     //调用类成员函数     GetDlgItem(IDC_EDIT1)->SetWindowText(L"0.");     //设置控件的数值类变量     m_edit_cs = L"0.";     U

DELPHI 动态 创建和释放 多个 EDIT 控件

unit Unit1;   interface   uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls, ExtCtrls;   type   TForm1 = class(TForm)     pnl1: TPanel;     btn1: TButton;     btn2: TButton;     procedure btn1Click(