โปรแกรมในlab นี้จะเป็นโปรแกรมอย่างง่ายที่ มีกรอบtext edit และมีปุ่ม clear,copy,paste,exit
-เมื่อทำการกดปุ่ม clear จะลบข้อความที่อยู่ในกรอบtext edit ออกทั้งหมด
-เมื่อกดปุ่มcopy จะคัดลอกข้อความที่อยุ่ในกรอบtext edit ทั้งหมด
-เมื่อกดปุ่มpaste จะวางข้อความลงไปในกรอบtext edit
-เมื่อกดปุ่มexit จะมี MessageBox เด้งขึ้นมาแล้วแสดงข้อความว่า "Do you want to quit!!\n Yes or No?"และแสดงปุ่ม yes และ no ให้กด ถ้ากด yes จะออกจากโปรแกรม ถ้าno ไม่ออกจากโปรแกรม
-เมื่อกดปุ่มpaste จะวางข้อความลงไปในกรอบtext edit
-เมื่อกดปุ่มexit จะมี MessageBox เด้งขึ้นมาแล้วแสดงข้อความว่า "Do you want to quit!!\n Yes or No?"และแสดงปุ่ม yes และ no ให้กด ถ้ากด yes จะออกจากโปรแกรม ถ้าno ไม่ออกจากโปรแกรม
- เริ่มจากเขียนไฟล์ .h
#include <afxwin.h> #define IDC_PAD 100 // #define IDC_CLSBUTTON 101 // #define IDC_COPYBUTTON 102 // create name for memory space #define IDC_PASTEBUTTON 103 // #define IDC_EXITBUTTON 104 // class CApp:public CWinApp{ public: virtual BOOL InitInstance(); }; class CWin:public CFrameWnd{ int response; CEdit *EditPad; // create Edit CButton *CLSButton,*CopyButton,*PasteButton,*ExitButton; // create button public: CWin(); ~CWin(); afx_msg void onExit(),onCopy(),onPaste(),onCLS(); // create function alert MessageBox on click DECLARE_MESSAGE_MAP(); //DECLARE massage };
- เขียนไฟล์ .cpp
#include "lab9a.h" CApp app; BEGIN_MESSAGE_MAP(CWin, CFrameWnd) // ON_BN_CLICKED(IDC_EXITBUTTON, onExit) // ON_BN_CLICKED(IDC_COPYBUTTON, onCopy) // import name space memory + function ON_BN_CLICKED(IDC_PASTEBUTTON, onPaste) // ON_BN_CLICKED(IDC_CLSBUTTON, onCLS) // END_MESSAGE_MAP(); void CWin::onExit(){ response=MessageBox("Do you want to quit!!\n Yes or No?", "Lab9: Little note pad", MB_ICONQUESTION|MB_YESNO); if (response==IDYES) DestroyWindow(); } void CWin::onCopy(){ EditPad->SetSel(0,-1,TRUE); //เลือกครอบทุกข้อความ EditPad->Copy(); EditPad->SetFocus(); //ทำไฮไลต์ให้ตรงตัวอักษร } void CWin::onCLS(){ EditPad->SetSel(0,-1,TRUE); EditPad->Clear(); EditPad->SetFocus(); } void CWin::onPaste(){ EditPad->SetSel(0,-1,TRUE); EditPad->Paste(); EditPad->SetFocus(); } BOOL CApp::InitInstance(){ m_pMainWnd=new CWin(); m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); return TRUE; } CWin::CWin(){ Create(NULL,"Little note pad", //สร้างหน้าต่าง WS_OVERLAPPED|WS_SYSMENU|WS_MINIMIZEBOX, CRect(0,0,290,245)); // EditPad=new CEdit(); // CLSButton=new CButton(); // CopyButton=new CButton(); // สร้างอ็อปเจ็ค PasteButton=new CButton(); // ExitButton=new CButton(); // EditPad->Create // (WS_CHILD|WS_VISIBLE|WS_BORDER|WS_TABSTOP| \ES_AUTOVSCROLL|ES_AUTOHSCROLL|ES_MULTILINE, // CRect(10,10,270,140), this, IDC_PAD); // // CLSButton->Create("Clear",WS_CHILD|WS_VISIBLE|WS_BORDER|WS_TABSTOP, // CRect(10,145,90,170), this, IDC_CLSBUTTON); // // CopyButton->Create("Copy",WS_CHILD|WS_VISIBLE|WS_BORDER|WS_TABSTOP, // เอาอ็อปเจ็คมาสร้างปุ่มลงไปบนหน้าต่าง CRect(100,145,180,170), this, IDC_COPYBUTTON); // // PasteButton->Create("Paste",WS_CHILD|WS_VISIBLE|WS_BORDER|WS_TABSTOP, // CRect(190,145,270,170), this, IDC_PASTEBUTTON); // // ExitButton->Create("Exit",WS_CHILD|WS_VISIBLE|WS_BORDER|WS_TABSTOP, // CRect(10,175,270,200), this, IDC_EXITBUTTON); // } CWin::~CWin(){ delete EditPad; // delete CLSButton; // delete CopyButton; // ลบอ็อปเจ็คที่จองไว้ในหน่วยความจำ delete PasteButton; // delete ExitButton; // }
ไม่มีความคิดเห็น:
แสดงความคิดเห็น