Hi, @milistefanos
The method in this thread still works. You need to start tabtip.exe when OnSetFocus
and close it when OnKillfocus
.
Sample snippet:
void CMFCApplication1Dlg::OnSetfocusEdit1()
{
HWND TabTip = ::FindWindow(L"IPTip_Main_Window", 0);
if (!TabTip)
{
ShellExecute(NULL, L"open", L"C:\\Program Files\\Common Files\\microsoft shared\\ink\\TabTip.exe", NULL, NULL, SW_SHOW);
}
else
{
TCHAR a[256] = _T("TabTip.exe");
DWORD b = 0;
GetPidByProcessName(a, &b);
KillProcess(b);
ShellExecute(NULL, L"open", L"C:\\Program Files\\Common Files\\microsoft shared\\ink\\TabTip.exe", NULL, NULL, SW_SHOW);
}
// TODO: Add your control notification handler code here
}
void CMFCApplication1Dlg::OnKillfocusEdit1()
{
HWND hWnd = ::FindWindow(_T("IPTIP_Main_Window"), _T(""));
::PostMessage(hWnd, WM_SYSCOMMAND, SC_CLOSE, 0);
// TODO: Add your control notification handler code here
}
Best regards,
Minxin Yu
If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.