在Qt应用程序中移动窗口“osk”

时间:2013-05-17 08:26:35

标签: qt process move

我在Qt中编写了一个触觉应用程序,我使用虚拟键盘“osk”来允许用户键入文本。 我使用此代码启动“osk”

QProcess process;
process.start("osk.exe");

我遇到的问题是我的应用程序的大小是有限的,所以我想移动键盘,以便它在我的应用程序中居中。 我可以随意移动吗?

1 个答案:

答案 0 :(得分:0)

您可以使用Win32 API:

#include "windows.h"


HWND hwnd = FindWindow(0, L"On-Screen Keyboard");
RECT rc;
GetWindowRect(hwnd, &rc);
MoveWindow(hwnd, 100, 100, rc.right-rc.left, rc.bottom-rc.top, true);

这会将窗口移动到(100,100)位置。