
期末作業,要求寫一個公式編輯器。如圖所示,這是基于對話框的小程式,其中紅線區域是一個內嵌的對話框,在這個內嵌對話框中會根據不同情況生成很多不同位置和大小的文本框,當點擊上面按鈕時,需要將相應的文本寫入此時獲焦的文本框。小弟,通過GetFocus()函式獲取句柄,但是句柄不正確,不能操作文本框。在線等大神解答,為謝!!!!!!
uj5u.com熱心網友回復:
你點按鈕,焦點不就跑到按鈕上了嗎,拿到按鈕句柄了,我猜是這樣?你內嵌那個對話框的代碼改進一下,當某個文本框點擊后就把句柄保存下來,然后你點按鈕就往當前保存下的句柄對應的文本框操作uj5u.com熱心網友回復:
1樓的方法應該可以,另外建議考慮用RichEdit,一個控制元件就夠了,可以顯示各種符號,就不用這樣動態弄好多edit了。uj5u.com熱心網友回復:
自己的程式, 只要關聯控制元件, 訪問控制元件變數就好了uj5u.com熱心網友回復:
"當點擊上面按鈕時" pDlg->GetDlgItem(IDC_EDITX);uj5u.com熱心網友回復:
FindWindowExThe FindWindowEx function retrieves a handle to a window whose class name and window name match the specified strings. The function searches child windows, beginning with the one following the given child window. This function does not perform a case-sensitive search.
HWND FindWindowEx(
HWND hwndParent, // handle to parent window
HWND hwndChildAfter, // handle to a child window
LPCTSTR lpszClass, // pointer to class name
LPCTSTR lpszWindow // pointer to window name
);
Parameters
hwndParent
Handle to the parent window whose child windows are to be searched.
If hwndParent is NULL, the function uses the desktop window as the parent window. The function searches among windows that are child windows of the desktop.
Windows NT 5.0 and later: If hwndParent is HWND_MESSAGE, the function searches all message-only windows.
hwndChildAfter
Handle to a child window. The search begins with the next child window in the Z order. The child window must be a direct child window of hwndParent, not just a descendant window.
If hwndChildAfter is NULL, the search begins with the first child window of hwndParent.
Note that if both hwndParent and hwndChildAfter are NULL, the function searches all top-level and message-only windows.
lpszClass
Pointer to a null-terminated string that specifies the class name or is an atom that identifies the class-name string. If this parameter is an atom, it must be a global atom created by a previous call to theGlobalAddAtom function. The atom, a 16-bit value, must be placed in the low-order word of lpszClass; the high-order word must be zero.
lpszWindow
Pointer to a null-terminated string that specifies the window name (the window's title). If this parameter is NULL, all window names match.
Return Values
If the function succeeds, the return value is a handle to the window that has the specified class and window names.
If the function fails, the return value is NULL. To get extended error information, callGetLastError.
QuickInfo
Windows NT: Requires version 4.0 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in winuser.h.
Import Library: Use user32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT.
See Also
Windows Overview, Window Functions, EnumWindows, FindWindow, GetClassName,GlobalAddAtom
uj5u.com熱心網友回復:
就放一個RichEdit就行了,點擊按鈕往那個內嵌的對話框發訊息,對話框收到訊息就往那個RichEdit輸入字符就行了uj5u.com熱心網友回復:
對話框不是有個類嗎,給這個對話框定義相應的類變數,發訊息給這個變數就可以了轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/115446.html
標籤:界面
