control型變量是這個控件所屬類的一個實例(對象)能夠經過這個變量來對該控件進行一些設置。而value只是用來傳遞數據,不能對控件進行其它的操做。
control型變量能夠得到控件的實例,經過這個變量,你能夠操縱控件 函數
value型變量僅僅能夠得到該控件的public型變量 orm
若是你添加了一個m_CtrlEdit的control型變量你能夠調用控件支持的全部函數,如: 對象
m_CtrlEdit.GetStyle(...) 字符串
得到控件的輸入內容或者說文本內容: it
CString str_name;
m_CtrlEdit.GetWindowText(str_name); 變量
MessageBox(str_name,"提示",0); date
而value型變量通常用於向控件傳遞數據,如:變量爲CString 類型的 m_Str m_Str="hustwjz";
UpdateData(FALSE); //能夠向控件傳遞數據 數據
UpdateData(TRUE); //能夠從控件得到數據 di
得到輸入數據後能夠進行相應操做.如下是寫文件用到的,把輸入的內容寫入文件 文件
UpdateData(TRUE);
student.age=m_age;
strcpy(student.name,m_char);
CString fPath;
fPath=GetAppPath();
IniFileHandle->m_FileName.Format(_T("%s"),fPath+_T("student"));
IniFileHandle->OpenFile(1);
IniFileHandle->Serialize(student);
IniFileHandle->CloseFile();
可使用成員變量來代替某個控件,當控件發生變化時,該成員變量的值也發生變化;ClassWizard增長成員變量的時候,選擇value類型能夠建立一個包含由用戶來輸入控件文本和控件狀態的成員變量;選擇Control類型,咱們能夠對這個控件直接進行訪問;
control就是控件,能夠獲得長度 高度 是否是可用 是否是可見
value是個字符串,跟控件綁定在一塊兒,能夠經過UpdateData(TRUE/FALSE)相互更新;
Value 就是一個變量
control 就是一個控件。
主要的區別也就是 變量 和 控件之間的區別,雖然他們實質上都是同樣的。 但是選擇 Value ,MFC 會把控件的內容對應到一個變量上。除非你用其餘API取得這個 控件進行操做,不然,就是一個變量而已。主要的用途是 UpdateData。進行數據讀些。 而做爲控件,把就是把這個東西直接對應到了一個控件對象上去,好比 CEdit 對象。 你能夠直接用這個對象來進行操做。熟悉了以後,就是一個怎麼用怎麼方便的問題。從其 實質來講,我認爲沒有什麼區別,都是控件。不表示,你選了value ,其控件就不存在, 只是說選擇value ,MFC的wizard 作了跟多事情,讓你面對這個控件能夠把它看做一個值而已。