MFC perusteet
Mureakuha
Sisällysluettelo |
[muokkaa]
Johdanto
MFC (Microsoft Foundation Class) on sovelluskehys, jonka avulla voidaan luoda ohjelmia Windowsiin. MFC on kirjoitettu C++:lla ja sisältää suurimman osan hallintaan tarvittavista funktioista. Jotta MFC:tä voisi käyttää helposti, on käytössä oltava Visual Studio -paketti (ei toistaiseksi toimi ilmaisversioissa). Suuri osa koodista tulee puoliautomaattisesti lomakkeiden (Wizard) avulla. Jotta ohjelmoinnin omaksuminen olisi helpompaa, on syytä perehtyä hieman Windowsin API -puoleen WIN32 -osiossa ennen MFC:n käyttöä.
[muokkaa]
Esimerkki
Seuraavassa tehdään sama esimerkki kuin Win32_perusteet -kohdassa.
[muokkaa]
Visual C++ 6
- Valitaan File -> New... -> Projects -> MFC AppWizard (exe) ja annetaan nimi.
- Valitaan tyypiksi Dialog based, annetaan sopiva nimi ikkunalle ja painetaan lopuksi Finish.
- Piirretään tulleeseen lomakkeeseen yksi muokkauslaatikko (Edit Box).
- Paina hiiren oikeanpuoleista nappia muokkausruudun kohdalla ja valitse 'ClassWizard...'.
- Valitse Member Variables -välilehdellä 'IDC_EDIT1' ja paina 'Add Variable...'. Valitse Category:sta Control, anna nimeksi m_hEdit ja paina kahdesti OK.
- Paina hiiren oikeanpuoleista nappia lomakkeessa olevan OK -napin kohdalla valiten 'Events...'.
- Kun valittuina on siis BN_CLICKED ja IDOK, paina 'Add and Edit' ja hyväksy nimi.
- Korvaa koko OnOK -tapahtuma koodilla:
char buffer[32]; double p; m_hEdit.GetWindowText(buffer,sizeof(buffer)); //Haetaan tekstilaatikon sisältö p = atof(buffer); //Annettu teksti luvuksi _gcvt(p*p, 4, buffer); //Luku tekstiksi MessageBox(buffer, "Testiohjelma", MB_OK); //Näytetään teksti
[muokkaa]
Visual C++ 2005
- Valitaan File -> New -> Project... -> Visual C++ -> MFC -> MFC Application ja annetaan sopiva nimi.
- Valinnoista valitaan tyypiksi 'Dialog based' ja tällä kerralla poistetaan ruksi 'Use Unicode libraries' -kohdasta.
- Paina Finish:n jälkeen 'Resource View' näkymästä Dialog:n alta 'IDD_..._DIALOG' auki.
- Piirrä yksi muokkausruutu (Edit Control) ja paina sen kohdalla hiiren oikeanpuoleisen napin alta 'Add Variable...'.
- Valitse luokaksi protected tai private ja nimeksi m_hEdit.
- Valitse OK -napin kohdalla hiiren oikeanpuoleisen napin alta 'Add Event Handler...'.
- Kun tyyppinä on BN_CLICKED ja Class kohdassa 'C...Dlg', paina 'Add and Edit'.
- Muuta tapahtuman koodiksi:
char buffer[32]; double p; m_hEdit.GetWindowText(buffer,sizeof(buffer)); //Haetaan tekstilaatikon sisältö p = atof(buffer); //Annettu teksti luvuksi _gcvt(p*p, 4, buffer); //Luku tekstiksi MessageBox(buffer, "Testiohjelma", MB_OK); //Näytetään teksti

