C 中SetWindowTextW,SetWindowTextA SetWindowText三者有什麼區別

時間 2022-07-22 00:35:17

1樓:匿名使用者

setwindowtextw表示設定的字串是wchar (雙位元組字元 )

setwindowtexta表示設定的字串是char (單位元組字元 )

setwindowtext表示設定的字串是自動匹配當前專案的字元環境是單位元組還是雙位元組字元

2樓:重新整理①丅

#ifdef unicode

#define setwindowtext  setwindowtextw

#else

#define setwindowtext  setwindowtexta

#endif // !unicode

首先解釋a和w的不同意義:

其實mfc中

凡是涉及字串處理的api函式都有a和w兩個版本

a結尾的表示使用ansi編碼:中文的windows作業系統一般對應的就是gbk,gbk在記憶體裡英文佔用一個位元組 、漢字兩個位元組。

w結尾的表示:

utf-16版本---英文兩個位元組、漢字兩個位元組

utf-32版本---英文四個位元組、漢字四個位元組

如果樓主確定你的軟體將來只需要英文或漢文字元,那就選擇a版本的api,如果有可能要使用多國文字,那麼最好使用w版本的api。

然後,樓主再看上面一段,mfc中的源**,其實實際上只存在setwindowtextw和setwindowtexta,如果你的整個專案字符集是unicode格式的字符集,那setwindowtext和setwindowtextw其實就是一個東西,如果不是unicode那setwindowtext就和setwindowtexta是一個東西。

vc的mfc中關於setwindowtext的一個簡單問題!

3樓:何處淬吳鉤

首先請確認你在你的對話方塊類裡面為edit新增的變數是公有成員變數(假設為m_edit)。然後通過對話方塊物件直接對成員進行引用就可以了。如你的對話方塊物件為dlg,那麼用dlg.

m_edit.setwindowtext()就可以了。或者你把對話方塊進一步封裝了,在對話方塊中增加設定編輯框文字的公有函式,這樣m_edit也可以定義成非共有的成員變數。

4樓:匿名使用者

用spy++ 獲取要找cedit 的視窗類名和視窗名 然後呼叫 findwindow 獲取該視窗的指標 接下來就可以進行相對應的操作

5樓:

執行緒操作窗體之需要獲得相應的控制代碼就ok了,比如執行緒 createthread 是可以傳遞一個引數的,你可以將 this 這個指標傳遞進來,然後 ((cdialog*)lpparameter)-> 就可以獲得到相應的資源,或者用標準的api函式也可以。

執行緒操作資源(這裡資源只廣義資源不是res)需要注意一個同步問題,就是多個執行緒可能同時在修改這個資源就會出現衝突,所以必須要使用臨界區等方法同步一下

6樓:匿名使用者

cedit編輯框 設定一個控制變數。假如你現在的類為caaaa.h

「我在dlg外面不知道怎麼獲取這個dlg裡面的cedit··· 」

你在另一個dialog(cbbb.h)類裡caaa dlg;

cstring str = dlg.cedit;

str就是cedit裡的字串的值;

7樓:匿名使用者

sendmessage 傳指標

setwindowtext,getwindowtext用法

cedit 類不是已經有setwindowtext(_t(""))函式了嗎,為什麼還要有clear()函式??!!

8樓:金色潛鳥

cedit 的 clear() 函式 有特殊用途。

它可以刪掉 當前選中的內容,但還可以用 undo 函式 恢復。

它可以刪掉 當前選中的內容,但還可以用 cut 函式 把內容 放入 視窗系統的 剪下板(clipboard)。

setwindowtext(_t("")) 相當於 賦值,賦一個空字串給窗的標題,它是cedit 從 父類繼承來的函式。

C 中的用法,C 中new的用法

除了樓上說的 還有 引用 和 取地址 的含義int a int b a 上述兩行語句執行完之後,a b表示同一個變數,對其中一個的操作相當於對另一個的操作 int a int b a 則b中儲存的是a的地址。對 b 的任何操作相當於對a的操作。 朱古力兜 表示引用,就是物件的另一個名字,例如 int...

關於C中的timer控制元件,C 中,關於Timer控制元件的說法正確的是 選2項

會完成。但是需要注意 1.system.windows.forms.timer 是單執行緒的,它只在ui執行緒中執行,定時精度約55ms,當前的事件沒處理完成時,下一次事件不會觸發 過久地處理會導致介面假死。2.system.threading.timer 是多執行緒的,觸發的事件在threadpo...

c 中vector是什麼意思,c 中copychars是什麼意思

萇苗 相當於建立一個可以放下100個caccount物件的陣列 暗影之王 vector在c 標準模板庫中的部分內容,它是一個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。程式語言方面 vector是c 標準模板庫中的部分內容,中文偶爾譯作 容器 但並不準確。它是一個多功能的,能夠操作多種資...