0

実行時に作成するエディット コントロールからテキストを取得し、そのテキストを実行時に作成する親ウィンドウ (タイトル バーではない) に出力しようとしています。どうすればいいですか?

            const int bufferSize = 1024;
            char textBuffer[bufferSize] = "";

            HWND Editbox = FindWindowEx(hWnd, NULL, "Edit", NULL);
            SendMessage(Editbox, WM_GETTEXT, 
                (WPARAM)bufferSize, (LPARAM)textBuffer);
            HWND Picbox = FindWindowEx(hWnd, NULL, "Picbox", NULL);

            RECT Picbox_Rect;
            GetClientRect(Picbox,&Picbox_Rect);
            Picbox_Rect.top = 3;
            Picbox_Rect.left = 3;
            hdc = GetDC (Picbox) ;
            HFONT fnt = CreateFont(14,0,0,0,FW_DONTCARE,
                FALSE,FALSE,FALSE,DEFAULT_CHARSET,
                OUT_OUTLINE_PRECIS,CLIP_DEFAULT_PRECIS,
                0, VARIABLE_PITCH,TEXT("Verdana"));
            SelectObject(hdc, fnt);
            SetTextColor(hdc,RGB(0,0,255));
            SetBkMode(hdc, TRANSPARENT);
            DrawText(hdc, textBuffer, strlen (textBuffer), 
                &Picbox_Rect, DT_LEFT);
            ReleaseDC (Picbox, hdc) ;
            DeleteObject(fnt);
                //InvalidateRect(Picbox, NULL, TRUE);
4

2 に答える 2

2

GetWindowTextを使用して編集コントロールからテキストを取得し、DrawTextまたはTextOutを使用してそれを書き込むことができます。

于 2012-07-09T06:02:19.293 に答える
1

Windows API に直行する場合は、 を使用GetWindowText()してテキスト ボックスからテキストを取得し、SetWindowText()そのテキストを別のウィンドウまたはコントロールに書き込みます。

于 2012-07-09T06:02:47.867 に答える