永发信息网

C#真的没法解决用SendMessage获取checkbox状态吗

答案:2  悬赏:50  手机版
解决时间 2021-02-09 03:37
C#真的没法解决用SendMessage获取checkbox状态吗
最佳答案
public const UInt32 BM_GETCHECK = 0x00F0;
public const UInt32 BM_SETCHECK = 0x00F1;
public const UInt32 BM_GETSTATE = 0x00F2;

private void button4_Click(object sender, EventArgs e)
{
IntPtr hWndParent = FindWindow("WindowsForms10.Window.8.app.0.2bf8098_r16_ad1", "Form3");
IntPtr h = FindWindowEx(hWndParent, IntPtr.Zero, "WindowsForms10.BUTTON.app.0.2bf8098_r16_ad1", "checkBox1");
Message msg = Message.Create(h, BM_CLICK, new IntPtr(0), new IntPtr(0));
//点击hwnd_button句柄对应的按钮
//PostMessage(msg.HWnd, msg.Msg, msg.WParam, msg.LParam);
SendMessage(msg.HWnd, BM_SETCHECK, new IntPtr(0), null);
int i = SendMessage(msg.HWnd, BM_GETSTATE, new IntPtr(0), null);
}

一些API函数的申明我就不写了。我搜遍了所有的资料,有2个问题无解。
1.发送BM_CLICK可以选中checkbox。但是发送BM_SETCHECK就不行。
2.发送BM_GETSTATE无法获取checkbox的状态。
全部回答
SendMessage(child, BM_GETCHECK, 0, 0);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
上海市松江区城市管理监察大队地址在哪,我要
郓城县张营镇有没有圆通快递
南竹杆胡同/西水井胡同(路口)地址在哪,我要
为了计算方便,通常把比例尺写成()是1或()
上海市城市管理执法总队(凯旋北路)地址有知道
鞍山哪有电玩城
为什么我支付宝添加银行卡 他说我预留银行的
徐汇区城市管理行政执法局执法大队第九分队地
愚人节怎么逗女朋友在QQ上
用3H标记的谷氨酸注入胰腺的腺泡细胞后,合成
五菱之光1.0排量的车子正时皮带多少公里更换
使用delphi可否让xml自动换行缩进
是不是不能让男人感觉你非常爱他,爱的很放心
徐汇区城市管理行政执法局执法大队第四分队地
时尚秀在什么地方啊,我要过去处理事情
推荐资讯
想生孩子,家庭风水布局有什么要求?
急.! 40来岁的人适合戴什么颜色的珍珠项链?
纸槽沟地址有知道的么?有点事想过去
两栖动物就是幼时生活在水中,长大时候生活在
声反射系数和吸收系数与声阻抗的关系还有哪些
高密市鸿盛农副产品专业合作社我想知道这个在
关于什么是虫草子实体?有什么功效?的问题
临床全科中级职称通过可以变更执业范围吗
顺昌加油站(吉强镇309省道何屲村段)地址在什
PSP双星物语在哪拿道具字典的,还有宠物在哪拯
某一健康人一段时期食糖类较多,其胰岛B细胞
我2013辽宁文科生,考入渤海大学专科营销与策
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?