




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、面向?qū)ο蠛涂梢暬绦蛟O(shè)計(jì)VisualC編程主講教師唐1.CEdit類類1.CEdit類類Afxwin.hclass CEdit : public CWnd DECLARE_DYNAMIC(CEdit)public: CEdit(); /此為此為構(gòu)造函數(shù)構(gòu)造函數(shù)定義,以下定義成員函數(shù)定義,以下定義成員函數(shù) BOOL Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID); BOOL CanUndo() const; int GetLineCount() const; BOOL GetModify() cons
2、t; void SetModify(BOOL bModified = TRUE); void GetRect(LPRECT lpRect) const; DWORD GetSel() const; void GetSel(int& nStartChar, int& nEndChar) const; HLOCAL GetHandle() const; void SetHandle(HLOCAL hBuffer);CEidt類的定義類的定義#if (WINVER = 0 x400) void SetMargins(UINT nLeft, UINT nRight); DWORD Ge
3、tMargins() const; void SetLimitText(UINT nMax); UINT GetLimitText() const; CPoint PosFromChar(UINT nChar) const; int CharFromPos(CPoint pt) const;#endif int GetLine(int nIndex, LPTSTR lpszBuffer) const; int GetLine(int nIndex, LPTSTR lpszBuffer, int nMaxLength) const;/ 操作操作 void EmptyUndoBuffer(); B
4、OOL FmtLines(BOOL bAddEOL);lpszBuffer的的第一個(gè)字必須第一個(gè)字必須 是是 buffer的大的大小小!void LimitText(int nChars = 0);int LineFromChar(int nIndex = -1) const;int LineIndex(int nLine = -1) const;int LineLength(int nLine = -1) const;void LineScroll(int nLines, int nChars = 0);void ReplaceSel(LPCTSTR lpszNewText, BOOL bC
5、anUndo = FALSE);void SetPasswordChar(TCHAR ch);void SetRect(LPCRECT lpRect);void SetRectNP(LPCRECT lpRect);void SetSel(DWORD dwSelection, BOOL bNoScroll = FALSE);void SetSel(int nStartChar, int nEndChar, BOOL bNoScroll = FALSE);BOOL SetTabStops(int nTabStops, LPINT rgTabStops);void SetTabStops();BOO
6、L SetTabStops(const int& cxEachStop); / takes an int/ 剪貼板操作剪貼板操作 BOOL Undo(); void Clear(); void Copy(); void Cut(); void Paste(); BOOL SetReadOnly(BOOL bReadOnly = TRUE); int GetFirstVisibleLine() const; TCHAR GetPasswordChar() const;/ Implementationpublic: virtual CEdit(); /虛擬虛擬析構(gòu)函數(shù)析構(gòu)函數(shù);表表 11-
7、1 通通用用 CEdit 類類的的方方法法方方法法說(shuō)說(shuō)明明CanUndo()決決定定一一個(gè)個(gè)編編輯輯操操作作是是否否可可以以撤撤銷銷Clear()從從編編輯輯控控件件中中刪刪除除當(dāng)當(dāng)前前的的選選擇擇(如如果果有有的的話話)Copy()將將編編輯輯控控件件當(dāng)當(dāng)前前的的選選擇擇(如如果果有有的的話話)以以 CF_TEXT 格格式式復(fù)復(fù)制制到到剪剪貼貼板板中中Cut()剪剪下下編編輯輯控控件件中中的的當(dāng)當(dāng)前前選選擇擇(如如果果有有的的話話)并并以以 CF_TEXT 格格式式復(fù)復(fù)制制到到剪剪貼貼板板中中EmptyUndoBuffer()消消除除一一個(gè)個(gè)編編輯輯控控件件的的“撤撤銷銷”標(biāo)標(biāo)志志GetFi
8、rstVisibleLine()確確定定編編輯輯控控件件中中的的最最上上面面的的可可視視行行GetModify()確確定定一一個(gè)個(gè)編編輯輯控控件件的的內(nèi)內(nèi)容容是是否否可可修修改改GetPasswordChar()當(dāng)當(dāng)用用戶戶輸輸入入文文本本時(shí)時(shí),獲獲得得編編輯輯控控件件中中顯顯示示的的密密碼碼字字符符GetRect()獲獲得得一一個(gè)個(gè)編編輯輯控控件件的的格格式式化化矩矩形形GetSel()獲獲得得編編輯輯控控件件中中當(dāng)當(dāng)前前選選擇擇的的開(kāi)開(kāi)始始和和結(jié)結(jié)束束字字符符位位置置LimitText()限限定定用用戶戶可可能能輸輸入入一一編編輯輯控控件件的的文文本本長(zhǎng)長(zhǎng)度度LineFromChar()獲
9、獲得得包包含含指指定定字字符符下下標(biāo)標(biāo)的的行行的的行行號(hào)號(hào)LineLength()獲獲得得編編輯輯控控件件中中的的一一行行的的長(zhǎng)長(zhǎng)度度LineScroll()滾滾動(dòng)動(dòng)多多行行編編輯輯控控件件的的文文本本Paste()將將剪剪貼貼板板的的數(shù)數(shù)據(jù)據(jù)插插入入到到編編輯輯控控件件作作當(dāng)當(dāng)前前的的光光標(biāo)標(biāo)位位置置,只只有有當(dāng)當(dāng)前前剪剪貼貼板板中中數(shù)數(shù)據(jù)據(jù)格格式式為為 CF_TEXT 時(shí)時(shí)方方可可插插入入ReplaceSel()用用指指定定文文本本替替代代編編輯輯控控件件中中當(dāng)當(dāng)前前選選擇擇的的部部分分SetModify()設(shè)設(shè)置置或或清清除除編編輯輯控控件件的的修修改改標(biāo)標(biāo)志志SetPasswordCh
10、ar()當(dāng)當(dāng)用用戶戶輸輸入入文文本本時(shí)時(shí)設(shè)設(shè)置置或或刪刪除除一一個(gè)個(gè)顯顯示示于于編編輯輯控控件件中中的的密密碼碼字字符符SetReadOnly()將將編編輯輯控控件件設(shè)設(shè)置置為為只只讀讀狀狀態(tài)態(tài)SetSel()在在編編輯輯控控件件中中選選擇擇字字符符的的范范圍圍Undo()取取消消最最后后一一個(gè)個(gè)編編輯輯控控件件操操作作表表 11-2 多行編輯所支持的多行編輯所支持的 CEdit 法法方法方法說(shuō)明說(shuō)明FmtLines()設(shè)置在多行編輯控件中包含軟分行符設(shè)置在多行編輯控件中包含軟分行符GetHandle()獲得當(dāng)前分配給一個(gè)多行編輯控件的內(nèi)存的句柄獲得當(dāng)前分配給一個(gè)多行編輯控件的內(nèi)存的句柄Get
11、Line()從一編輯控件中獲得一行文本從一編輯控件中獲得一行文本GetLineCount()獲得多行編輯控件的行數(shù)獲得多行編輯控件的行數(shù)LineIndex()設(shè)置多行編輯控件中一行的字符下標(biāo)設(shè)置多行編輯控件中一行的字符下標(biāo)SetHandle()設(shè)置多行編輯控件將要用到的句柄內(nèi)存句柄設(shè)置多行編輯控件將要用到的句柄內(nèi)存句柄SetRect()設(shè)置多行編輯控件的格式化矩形并更新控件設(shè)置多行編輯控件的格式化矩形并更新控件SetRectNP()設(shè)置多行編輯控件的格式化矩形并且不重繪控件窗口設(shè)置多行編輯控件的格式化矩形并且不重繪控件窗口SetTabStops()在多行編輯控件中設(shè)置制表在多行編輯控件中設(shè)置制
12、表(tab)位位例例11-1設(shè)計(jì)并實(shí)現(xiàn)帶有兩個(gè)編輯框的應(yīng)用程序設(shè)計(jì)并實(shí)現(xiàn)帶有兩個(gè)編輯框的應(yīng)用程序,其其窗口布局窗口布局如如 圖圖11-1,功能如下,功能如下:F單擊單擊ShowlEdit1編輯框中顯示編輯框中顯示“This is the first EditBox.”F單擊單擊Clear1Edit1編輯框中的內(nèi)容被清除;編輯框中的內(nèi)容被清除;F單擊單擊Show2Edit2編輯框中顯示編輯框中顯示“This is the second EditBox!”F單擊單擊Clear2Edit2編輯框中的內(nèi)容被清除;編輯框中的內(nèi)容被清除;F單擊單擊TransferEdit1編輯框的內(nèi)容復(fù)制到編輯框的內(nèi)容復(fù)
13、制到Edit2的編輯框中去的編輯框中去F單擊單擊Undo取消上一次操作取消上一次操作F單擊單擊Exit退出程序的運(yùn)行退出程序的運(yùn)行圖圖11-1 應(yīng)用程序的窗口布局應(yīng)用程序的窗口布局F在在EditBoxEditBox的工作區(qū)中選擇的工作區(qū)中選擇Resource ViewResource ViewF在名為在名為IDD_EDITBOX_DIALOGIDD_EDITBOX_DIALOG的對(duì)話框作為應(yīng)的對(duì)話框作為應(yīng)用程序的主窗口中進(jìn)行用程序的主窗口中進(jìn)行界面設(shè)計(jì)界面設(shè)計(jì)生成了工程文件和生成了工程文件和工程工作區(qū)文件后工程工作區(qū)文件后在在EditBoxEditBox的工作區(qū)的工作區(qū)中選擇中選擇Resour
14、ceViewResourceView控件工具窗控件工具窗提供了提供了VCVC中中所有可建立所有可建立的控件類型的控件類型把鼠標(biāo)停在把鼠標(biāo)停在編輯框控件編輯框控件上,即可顯上,即可顯示該控件的示該控件的類型。類型。直接在可視化編輯的直接在可視化編輯的IDD_EDITBOX_DIALOGIDD_EDITBOX_DIALOG對(duì)話框?qū)υ捒? , 利用控件工利用控件工具窗實(shí)現(xiàn)可視化操作具窗實(shí)現(xiàn)可視化操作編輯框控件布置對(duì)話框中編輯框控件布置對(duì)話框中如編輯框。如編輯框。對(duì)對(duì) 象象I ID DC Ca ap pt ti io on n編編輯輯框框I ID DC C_ _E ED DI IT T1 1無(wú)無(wú)編編輯
15、輯框框I ID DC C_ _E ED DI IT T2 2無(wú)無(wú)命命令令按按鈕鈕I ID DC C_ _S SH HO OW W1 1_ _B BU UT TT TO ON NS Sh ho ow wl l命命令令按按鈕鈕I ID DC C_ _C CL LE EA AR R1 1_ _B BU UT TT TO ON NC Cl le ea ar rl l命命令令按按鈕鈕I ID DC C_ _S SH HO OW W2 2_ _B BU UT TT TO ON NS Sh ho ow w2 2命命令令按按鈕鈕I ID DC C_ _C CL LE EA AR R2 2_ _B BU UT
16、TT TO ON NC Cl le ea ar r2 2命命令令按按鈕鈕I ID DC C_ _T Tr ra an ns sf fe er r_ _B BU UT TT TO ON NT Tr ra an ns sf fe er r命命令令按按鈕鈕I ID DC C_ _E EX XI IT T_ _B BU UT TT TO ON N& &E Ex xi it t命命令令按按鈕鈕I ID DC C_ _U UN ND DO O_ _B BU UT TT TO ON N& &U Un nd do oF將鼠標(biāo)移到將鼠標(biāo)移到Edit1Edit1編輯框上;編輯框上;
17、F單擊鼠標(biāo)右鍵,并在快捷菜單擊鼠標(biāo)右鍵,并在快捷菜單中選擇單中選擇PropertiesProperties命令;命令;F在窗口中輸入控件的在窗口中輸入控件的IDID標(biāo)識(shí)標(biāo)識(shí)值值IDC_EDIT1IDC_EDIT1;F用同樣的方法設(shè)置其它各個(gè)用同樣的方法設(shè)置其它各個(gè)對(duì)象的屬性。對(duì)象的屬性。3.給界面對(duì)象連接變量給界面對(duì)象連接變量F在編輯框在編輯框EDIT1中,單擊鼠標(biāo)中,單擊鼠標(biāo)右右鍵,在彈出的快捷菜單中,鍵,在彈出的快捷菜單中,選擇選擇ClassWizard;F選擇選擇Member Variables;F單擊單擊IDC_EDIT1;(a)選擇選擇Member Variables選項(xiàng)卡選項(xiàng)卡(b
18、)單擊單擊Control Ids列表列表框中框中IDC_EDIT1項(xiàng),項(xiàng),使之高亮化使之高亮化(c) 單擊單擊Add Variable按鈕,顯示按鈕,顯示AddMemberVariable窗口窗口F單擊單擊Add Variable按鈕,顯示按鈕,顯示AddMemberVariable窗口;窗口;F成員變量名設(shè)置為成員變量名設(shè)置為m_Edit1;F類別設(shè)置為類別設(shè)置為Control;F變量類型設(shè)置為變量類型設(shè)置為CEdit。注意:注意:只有將只有將m_Edit1設(shè)為設(shè)為CEdit 類型,才能調(diào)用該類的類型,才能調(diào)用該類的Copy () , Paste () 等成員函數(shù),實(shí)現(xiàn)本應(yīng)用程序的操作。等成
19、員函數(shù),實(shí)現(xiàn)本應(yīng)用程序的操作。(d)置置Member Variables name為為m_Edit1(f)置置 Variable type為為CEdit1(e)置置Categroy 為為ControlF用同樣的方法給編輯框用同樣的方法給編輯框EDIT2等其它對(duì)象連接各自的變量等其它對(duì)象連接各自的變量;F最終,最終,ClassWizard窗口將變?yōu)橄聢D所示。窗口將變?yōu)橄聢D所示。水平及垂水平及垂直滾動(dòng)條直滾動(dòng)條4 .修改編輯框的特性修改編輯框的特性F在編輯框在編輯框EDIT1EDIT1中,單擊鼠標(biāo)中,單擊鼠標(biāo)右右鍵;鍵;F在快捷菜單中,選在快捷菜單中,選PropertiesProperties命令
20、;命令;F選選Styles選項(xiàng)卡,進(jìn)行設(shè)置,修改選項(xiàng)卡,進(jìn)行設(shè)置,修改其的特性其的特性。F用同樣方法修改用同樣方法修改EDIT2EDIT2的特性。的特性。多行多行編輯編輯允許回車鍵,允許回車鍵,可實(shí)現(xiàn)多行文可實(shí)現(xiàn)多行文本輸入本輸入5 . 給界面對(duì)象連接函數(shù)添加代碼給界面對(duì)象連接函數(shù)添加代碼F在按鈕在按鈕Showl上,單擊鼠標(biāo)上,單擊鼠標(biāo)右右鍵,在彈出的快捷菜單中,選鍵,在彈出的快捷菜單中,選擇擇ClassWizard;F選擇選擇Message Map;F單擊單擊IDC_SHOW1_BUTTON;F單擊單擊BN_CLICKED(a)選擇選擇Member Map選項(xiàng)卡選項(xiàng)卡(b)單擊單擊Objec
21、t Ids列表框中列表框中IDC_SHOW1_BUTTON項(xiàng),項(xiàng),(d) 單擊單擊Add Function按鈕,顯示按鈕,顯示AddMemberFunction窗口窗口(c)單擊單擊Message列表框列表框中中BN_CLICKED項(xiàng),項(xiàng),F(xiàn)單擊單擊Add Function按鈕,按鈕,彈出彈出Add Member Function窗口窗口F接受接受Add Member FunctionAdd Member Function建議的函數(shù)名建議的函數(shù)名F增加了成員函數(shù)增加了成員函數(shù)OnShow1Button()OnShow1Button();F單擊單擊Edit Code按鈕按鈕, 顯示代碼文件,進(jìn)行
22、添加代碼。顯示代碼文件,進(jìn)行添加代碼。(e)接受接受Add Member Add Member FunctionFunction建議的函數(shù)建議的函數(shù)名名OnShow1Button()OnShow1Button()(b) 增加了成員函數(shù)增加了成員函數(shù)OnShow1Button()(d) 單擊單擊Edit Code, 顯示代碼文件,顯示代碼文件,添加代碼添加代碼void CEditBoxDlg:OnShow1Button()m_Edit1.SetSel(0,-1); /選中編輯框選中編輯框IDC_EDIT1中的全部?jī)?nèi)容中的全部?jī)?nèi)容m_Edit1.ReplaceSel(This is the fir
23、st EditBox.);/替換內(nèi)容替換內(nèi)容請(qǐng)注意:請(qǐng)注意:程序中程序中SetSel()和和 ReplaceSel()都是都是CEdit類中的成員函數(shù),類中的成員函數(shù),m_Edit1是屬于是屬于CEdit類的對(duì)象,可以調(diào)用之。類的對(duì)象,可以調(diào)用之。(1) (1) 給給ShowlShowl按鈕連接代碼按鈕連接代碼(2) (2) 給給Clear1Clear1按鈕連接代碼按鈕連接代碼void CEditBoxDlg:OnClear1Button() m_Edit1.SetSel(0,-1);/選中編輯框選中編輯框IDC_EDIT1中的全部?jī)?nèi)容中的全部?jī)?nèi)容m_Edit1.ReplaceSel();/用
24、空字符串代替所選文本,即刪除之用空字符串代替所選文本,即刪除之(3)(3)給給Show2Show2和和Clear2Clear2按鈕連接代碼按鈕連接代碼void CEditBoxDlg:OnShow2Button() m_Edit2.SetSel(0,-1);/選中編輯框選中編輯框IDC_EDIT2中的全部?jī)?nèi)容。中的全部?jī)?nèi)容。m_Edit2.ReplaceSel(This is the second EditBox.); /替換內(nèi)容替換內(nèi)容void CEditBoxDlg:OnClear2Button() m_Edit2.SetSel(0,-1);/選中編輯框選中編輯框IDC_EDIT2中的全部
25、內(nèi)容。中的全部?jī)?nèi)容。 m_Edit2.ReplaceSel();/用空字符串代替所選文本,即刪除之用空字符串代替所選文本,即刪除之(4)(4)給按鈕給按鈕IDC_Transfer_BUTTONIDC_Transfer_BUTTON連接代碼連接代碼void CEditBoxDlg:OnCopyButton() m_Edit1.SetSel(0,-1);m_Edit1.Copy();/將將m_Editl編輯框中所選的內(nèi)容拷貝到剪貼板上編輯框中所選的內(nèi)容拷貝到剪貼板上m_Edit2.SetSel(0,-1);m_Edit2.ReplaceSel();m_Edit2.Paste();/將剪貼板中的內(nèi)容
26、粘貼到將剪貼板中的內(nèi)容粘貼到m_Edit2編輯框中編輯框中(5) (5) 給給 UndoUndo按鈕連接代碼按鈕連接代碼void CEditBoxDlg:OnUndoButton() m_Edit1.Undo();/ 取消編輯框中上一次操作取消編輯框中上一次操作m_Edit2.Undo();(6) (6) 給給ExitExit按鈕連接代碼按鈕連接代碼void CEditBoxDlg:OnExitButton() OnOK();請(qǐng)注意:請(qǐng)注意:本應(yīng)用程序的可視化編程到此已完成,本應(yīng)用程序的可視化編程到此已完成,編譯連接后此應(yīng)用程序便可執(zhí)行編譯連接后此應(yīng)用程序便可執(zhí)行。【11-811-8】編寫(xiě)一個(gè)
27、程序,能夠輸入學(xué)生的信息編寫(xiě)一個(gè)程序,能夠輸入學(xué)生的信息,包括:,包括:“學(xué)號(hào)學(xué)號(hào)”、“姓名姓名”、“性別性別”、“年齡年齡”和所在的系,并能根據(jù)學(xué)生的和所在的系,并能根據(jù)學(xué)生的“學(xué)學(xué)號(hào)號(hào)”、“姓名姓名”和系別來(lái)進(jìn)行檢索。當(dāng)檢索和系別來(lái)進(jìn)行檢索。當(dāng)檢索到的信息超過(guò)一個(gè)時(shí),能夠依次顯示。到的信息超過(guò)一個(gè)時(shí),能夠依次顯示。F界面由界面由”組合框、靜態(tài)文本框和編輯框等組組合框、靜態(tài)文本框和編輯框等組成成F單擊工具窗單擊工具窗“組合框組合框”按鈕后,在對(duì)話按鈕后,在對(duì)話框的左上角按下鼠標(biāo)左鍵并拖動(dòng)鼠標(biāo)畫(huà)框的左上角按下鼠標(biāo)左鍵并拖動(dòng)鼠標(biāo)畫(huà)出一個(gè)大小合適的組合框,出一個(gè)大小合適的組合框,F(xiàn)在在組合框組合框
28、上單擊鼠標(biāo)上單擊鼠標(biāo)右右鍵,在彈出的快鍵,在彈出的快捷菜單中選擇捷菜單中選擇PropertiesProperties菜單項(xiàng),然后菜單項(xiàng),然后在彈出的在彈出的Group box propertiesGroup box properties對(duì)話框?qū)υ捒蛑械妮斎胫械妮斎隝DID值和值和CaptionCaption屬性屬性F單擊單擊“靜態(tài)文本靜態(tài)文本”按鈕,在按鈕,在“學(xué)生信息學(xué)生信息”組合框左上角畫(huà)靜組合框左上角畫(huà)靜態(tài)文本框;態(tài)文本框;F靜態(tài)文本框上單擊右鍵,選擇靜態(tài)文本框上單擊右鍵,選擇PropertiesProperties菜單項(xiàng);菜單項(xiàng);F選選CaptionCaption屬性編輯框,輸入屬性編
29、輯框,輸入“學(xué)號(hào)學(xué)號(hào)”。F單擊單擊“編輯框編輯框”按鈕,在按鈕,在“學(xué)生信息學(xué)生信息”組合框的右上角畫(huà)編組合框的右上角畫(huà)編輯框;輯框;F編輯框上單擊右鍵,選擇編輯框上單擊右鍵,選擇PropertiesProperties菜單項(xiàng);菜單項(xiàng);F在彈出的在彈出的Edit propertiesEdit properties對(duì)話框中設(shè)置編輯框的屬性對(duì)話框中設(shè)置編輯框的屬性。F同樣,在已建立的各個(gè)控件上單擊鼠標(biāo)右鍵,選擇同樣,在已建立的各個(gè)控件上單擊鼠標(biāo)右鍵,選擇PropertiresPropertires選項(xiàng),按照從上到下的順序設(shè)置各編輯選項(xiàng),按照從上到下的順序設(shè)置各編輯框?qū)ο蟮膶傩裕绫砜驅(qū)ο蟮膶傩裕?/p>
30、表11-1111-11所示。最后兩列是控件連所示。最后兩列是控件連接的變量。接的變量。表表 11-11 11-11 【11-811-8】中編輯框及組合框?qū)ο蟮淖兞考捌漕愋汀恐芯庉嬁蚣敖M合框?qū)ο蟮淖兞考捌漕愋蛯?duì)象對(duì)象IDIDCaptionCaption變量變量類型類型編輯框編輯框IDC_EDIT_STUCODEIDC_EDIT_STUCODEm_csCodem_csCodeCStringCString編輯框編輯框IDC_EDIT_NAMEIDC_EDIT_NAMEm_csNamem_csNameCStringCString編輯框編輯框IDC_EDIT_SEXIDC_EDIT_SEXm_csSex
31、m_csSexCStringCString編輯框編輯框IDC_EDIT_AGEIDC_EDIT_AGEm_csAgem_csAgeCStringCString編輯框編輯框IDC_EDIT_DEPTIDC_EDIT_DEPTm_csDeptm_csDeptCStringCString組合框組合框IDC_STATICIDC_STATIC學(xué)生信息學(xué)生信息編輯框編輯框IDC_EDIT_SEARCHCODEIDC_EDIT_SEARCHCODEm_csSearchCodem_csSearchCodeCStringCString編輯框編輯框IDC_EDIT_SEARCHNAMEIDC_EDIT_SEARC
32、HNAMEm_csSearchNamem_csSearchNameCStringCString編輯框編輯框IDC_EDIT_SEARCHDEPTIDC_EDIT_SEARCHDEPTm_csSearchDeptm_csSearchDeptCStringCString組合框組合框IDC_STATICIDC_STATIC檢索檢索F刪除對(duì)話框中的刪除對(duì)話框中的CancelCancel按鈕和按鈕和OKOK按鈕。按鈕。F單擊工具欄單擊工具欄 “ “按鈕按鈕”按鈕,在窗口的右下角畫(huà)出一個(gè)按按鈕,在窗口的右下角畫(huà)出一個(gè)按鈕,鈕,F(xiàn)在按鈕上單擊右鍵,在彈出的菜單中選擇在按鈕上單擊右鍵,在彈出的菜單中選擇Pro
33、pertiesProperties項(xiàng),項(xiàng),F(xiàn)彈出了一個(gè)彈出了一個(gè)Push Button PropertiesPush Button Properties對(duì)話框,輸入對(duì)話框,輸入IDID和和CaptionCaption屬性屬性F依次可以繪制其他的下壓式按鈕。屬性如表依次可以繪制其他的下壓式按鈕。屬性如表11-1211-12所示所示表表 1 11 1- -1 12 2 【 1 11 1- -8 8】中中按按鈕鈕 對(duì)對(duì)象象的的屬屬性性值值對(duì)對(duì) 象象I ID DC Ca ap pt ti io on n下下 壓壓 式式 按按鈕鈕I ID DC C_ _B BT TN N_ _I IN NP PU UT
34、 T輸輸 入入 信信 息息下下 壓壓 式式 按按鈕鈕I ID DC C_ _B BT TN N_ _S SE EA AR RC CH H檢檢 索索下下 壓壓 式式 按按鈕鈕I ID DC C_ _B BT TN N_ _C CO ON NT TI IN NU UE E下下 一一 條條 信信息息下下 壓壓 式式 按按鈕鈕I ID DO OK K退退 出出添加變量界面添加變量界面在文件在文件11-8Dlg.h11-8Dlg.h中的對(duì)話框類中的對(duì)話框類CMy11-8DlgCMy11-8Dlg定義前,加入記定義前,加入記錄學(xué)生信息的結(jié)構(gòu)體定義:錄學(xué)生信息的結(jié)構(gòu)體定義:struct studentstr
35、uct student CString csCode;CString csCode;/學(xué)號(hào)學(xué)號(hào)CString csName;CString csName;/姓名姓名CString csSex;CString csSex;/性別性別CString csAge;CString csAge;/年齡年齡CString csDept;CString csDept;/系別系別;在窗口中打開(kāi)在窗口中打開(kāi)ClassViewClassView窗口,在對(duì)窗口,在對(duì)話框類話框類CMy11-8DlgCMy11-8Dlg上單擊鼠標(biāo)右鍵,上單擊鼠標(biāo)右鍵,在彈出的菜單中選擇在彈出的菜單中選擇Add Member Add M
36、ember VariablesVariables選項(xiàng)選項(xiàng)( (如右圖如右圖) ),在彈出的,在彈出的Add Mmember VariablesAdd Mmember Variables對(duì)話框中的對(duì)話框中的variablevariable編輯框中輸入編輯框中輸入studentstudent,在,在variable namevariable name編輯框中輸入編輯框中輸入structStudent10structStudent10,這樣就定義了,這樣就定義了一個(gè)能記錄一個(gè)能記錄1010個(gè)學(xué)生信息的結(jié)構(gòu)數(shù)組個(gè)學(xué)生信息的結(jié)構(gòu)數(shù)組。然后采用此種辦法加入變量:。然后采用此種辦法加入變量:int int
37、nStudentNumnStudentNum,int nAccordNumint nAccordNum,int int nAccordItem10nAccordItem10。分別用來(lái)記錄以。分別用來(lái)記錄以輸入學(xué)生的數(shù)目,檢索時(shí)符合條件的輸入學(xué)生的數(shù)目,檢索時(shí)符合條件的學(xué)生的數(shù)目,符合檢索條件的學(xué)生在學(xué)生的數(shù)目,符合檢索條件的學(xué)生在structstudent10structstudent10中的位置。中的位置。void CMy11_8Dlg:OnBtnInput() void CMy11_8Dlg:OnBtnInput() UpdateData(TRUE);UpdateData(TRUE);/從
38、窗口編輯框中讀入數(shù)據(jù)從窗口編輯框中讀入數(shù)據(jù)structStudentnStudentNum.csCode = m_csCode;structStudentnStudentNum.csCode = m_csCode;/賦值給學(xué)生結(jié)構(gòu)體賦值給學(xué)生結(jié)構(gòu)體structStudentnStudentNum.csName = m_csName;structStudentnStudentNum.csName = m_csName;structStudentnStudentNum.csSex = m_csSex;structStudentnStudentNum.csSex = m_csSex;structSt
39、udentnStudentNum.csAge = m_csAge;structStudentnStudentNum.csAge = m_csAge;structStudentnStudentNum.csDept = m_csDept;structStudentnStudentNum.csDept = m_csDept;nStudentNum+;nStudentNum+; 定義函數(shù)定義函數(shù)UpdateData(TRUE)UpdateData(TRUE)將窗口中編輯框中信息存儲(chǔ)到與編將窗口中編輯框中信息存儲(chǔ)到與編輯框連接的輯框連接的CStringCString型變量中去。然后將這些型變量中去。然后
40、將這些CStringCString型變量保存到型變量保存到structStudentstructStudent數(shù)組中。然后變量數(shù)組中。然后變量nStudentNumnStudentNum自增。自增。void CMy11_8Dlg:OnBtnSearch() void CMy11_8Dlg:OnBtnSearch() BOOL bAccordCode = FALSE; /BOOL bAccordCode = FALSE; /設(shè)置學(xué)號(hào)是否符合的變量設(shè)置學(xué)號(hào)是否符合的變量BOOL bAccordName = FALSE; /BOOL bAccordName = FALSE; /設(shè)置姓名是否符合的變量設(shè)置姓名是否符合的變量BOOL bAccordDept = FALSE; /BOOL bAccordDept = FALSE; /設(shè)置所在系名稱是否符合的變量設(shè)置所在系名稱是否符合的變量CString csBuffer;CString csBuffer;nAccordNum = 0;nA
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽省安慶市望江縣2025屆數(shù)學(xué)三上期末統(tǒng)考試題含解析
- 2025屆上饒市玉山縣數(shù)學(xué)三年級(jí)第一學(xué)期期末教學(xué)質(zhì)量檢測(cè)模擬試題含解析
- 風(fēng)景創(chuàng)意美術(shù)課件
- 工程經(jīng)濟(jì)理論實(shí)操試題及答案
- 工程經(jīng)濟(jì)考試策略試題及答案
- 響應(yīng)式Web開(kāi)發(fā)項(xiàng)目教程(HTML5 CSS3 Bootstrap)(第3版) 課件 第7章 移動(dòng)Web屏幕適配
- 市政工程設(shè)計(jì)審批流程試題及答案
- 運(yùn)動(dòng)鞋廣告設(shè)計(jì)與制作
- 公共關(guān)系學(xué)品牌塑造試題及答案
- 眼科視頻課件下載
- 華爾道夫酒店項(xiàng)目塔吊截臂施工方案
- GB/T 4852-2002壓敏膠粘帶初粘性試驗(yàn)方法(滾球法)
- 第七章歐洲-第3講歐洲主要國(guó)家
- GB 4824-2019工業(yè)、科學(xué)和醫(yī)療設(shè)備射頻騷擾特性限值和測(cè)量方法
- 11471勞動(dòng)爭(zhēng)議處理(第3章)
- 電廠化學(xué)(培訓(xùn)教材課件)
- 患者跌倒的預(yù)防及管理課件
- 彩寶專業(yè)知識(shí)課件
- 工程竣工驗(yàn)收?qǐng)?bào)告及五方驗(yàn)收表
- 常用試敏藥品操作規(guī)程表
- 學(xué)位論文寫(xiě)作及其學(xué)術(shù)規(guī)范課件
評(píng)論
0/150
提交評(píng)論