2013-03-22 39 views
2

這很簡單。我創建的編輯控制是這樣的:編輯控件文本溢出

HWND MYTEXT= CreateWindowEx(WS_EX_CLIENTEDGE, L"EDIT", L"", 
          WS_CHILD|WS_VISIBLE|ES_LEFT|ES_MULTILINE, 
          20, 120, 150, 20, hWnd, NULL, hInst, NULL); 

但是當我在它的內部鍵入文本我不能鍵入比EDIT控制的寬度更多的文本。當我到達最後時,就像沒有更多的空間,我會發出嗶嗶聲。在這種情況下我怎樣才能讓文字滾動?

回答

4

你可以給你的編輯控制WS_HSCROLL和/或WS_VSCROLLwindow styles。例如:

HWND myText 
    = CreateWindowEx(WS_EX_CLIENTEDGE, L"EDIT", L"", 
        WS_CHILD | WS_VISIBLE | WS_HSCROLL | ES_LEFT | ES_MULTILINE, 
        20, 120, 150, 20, hWnd, NULL, hInst, NULL); 

或者,馬修T. Staebler理所當然地表明,使用ES_AUTOHSCROLL和/或ES_AUTOVSCROLL(注意ES_前綴,因爲這些是編輯的風格,不窗口樣式)。

+2

根據您想要滾動的行爲,您可能需要考慮將WS_AUTOHSCROLL和WS_AUTOVSCROLL作爲替代選項。請參閱http://msdn.microsoft.com/en-us/library/windows/desktop/bb775456%28v=vs.85%29.aspx。 – 2013-03-22 21:37:04

+0

感謝馬修,那就是我一直在尋找的東西 – ali 2013-03-22 21:43:02