2
回答
如何获取窗口句柄和button句柄

@北风其凉 你好,想跟你请教个问题:我用C#重新写好了一个文本朗读器,然后我想利用语音控制实现程序的打开、关闭、播放和暂停。语音控制的程序是重新写的一个c++程序(之前这个程序实现了语音控制QQ的打开关闭隐藏显示等),现在我能实现控制朗读器的打开关闭,用shellExecute实现的,但是调用window api函数showwindow实现隐藏和显示却出现了问题,我窗口的句柄是用spy++查了的,但是程序没反应,我想问问您这是什么问题?还是说我在语音朗读器的C#程序中应该添加关于句柄的代码嘛?

举报
wanano-wang
发帖于2年前 2回/112阅
共有2个答案 最后回答: 2年前
你说的这个方面我以前没有做过,这方面真的帮不了你什么,个人认为这个情况应该和C#程序关系不大。 :-)

你只说了使用的是 C# 语言,没说具体使用的是什么界面技术。Windows Forms、WPF、Gtk#、QtSharp、Xwt 还是其他?

如果你用的是 Windows Forms,可以通过控件的 Handle 属性获取控件的句柄。如果采用的是其它技术,那么你只能获取到窗体的句柄,WPF、GTK#、QtSharp、Xwt 等只有窗体具有句柄,窗体内的控件不是平台原生的,没有句柄。

句柄(handle)是在控件创建时,由操作系统分配和管理的,因此程序每次启动时控件的句柄都是不一样的。所以你每次启动程序时都必须重新获取控件句柄。


顶部