Elemi alkalmazások fejlesztése
|
|
- Fanni Dobos
- 5 évvel ezelőtt
- Látták:
Átírás
1 SÚGÓ KÉSZÍTÉSE II. 2. FELADAT: HELYZETÉRZÉKENY SÚGÓ KÉSZÍTÉSE...2 A SÚGÁS ALAPJAI...4 SÚGÓ AZONOSÍTÓK DEFINIÁLÁSA (HELP ID)...4 SÚGÓ SZÖVEGEK MEGADÁSA...5 A PÁRBESZÉDABLAK SÚGÓFÁJLJÁNAK ELKÉSZÍTÉSE...6 SÚGÓ ÜZENETEK FELVÉTELE A SÚGÓ PROJEKTBE...6 SÚGÓ AZONOSÍTÓK ÉS HTML OLDALAK ÖSSZEKAPCSOLÁSA...6 ÚJ ABLAK FELVÉTELE A SÚGÓ PROJEKTBE...7 A HHDEMO.HHP SÚGÓ PROJEKT TELJES LISTÁJA...8 A HTMLHELP API HASZNÁLATA...9 A HH_POPUP STRUKTÚRA...9 A CSHBUTTON OSZTÁLY A CSHBUTTON OSZTÁLY LÉTREHOZÁSA A CSHBUTTON OSZTÁLY ADATTAGJAI A CSHBUTTON OSZTÁLY METÓDUSAI class CSHButton : public CButton void CSHButton::SetHelpID(DWORD d) CSHButton::CSHButton() CSHButton.cpp void CSHButton::ShowPopupText(CString textfile, COLORREF frg, COLORREF bkg ) A CSHBUTTON OSZTÁLY ESEMÉNYKEZEL METÓDUSAI Az egérmozgatás callback függvény void CSHButton::OnMouseMove(UINT nflags, CPoint point) Az id zít callbackfüggvénye void CSHButton::OnTimer(UINT nidevent) A jobb egérkattintás callback függvénye void CSHButton::OnContextMenu(CWnd* pwnd, CPoint point) Az F1 billenty callback függvénye BOOL CSHButton::OnHelpInfo(HELPINFO* phelpinfo) A CSHEDIT OSZTÁLY AZ ADVANCEDHELPDEMO OSZTÁLY AZ ADVANCEDHELPDEMO OSZTÁLY FELKÉSZÍTÉSE SÚGÁSRA A PÁRBESZÉDABLAK INICIALIZÁLÁSA: ONINITDIALOG BOOL AdvancedHelpDemo::OnInitDialog() A DEMO/ADVACED DEMO MENÜPONT MEGADÁSA void CMainFrame::OnDemoAdvanced() HELYI MENÜ A PÁRBESZÉDABLAKON HELYI MENÜ MEGTERVEZÉSE Helyi menü behívása: jobb egérkattintásra void AdvancedHelpDemo::OnRButtonDown(UINT nflags, CPoint point) Helyi menüpontválasztás callback függvénye void AdvancedHelpDemo::OnPopupPiros() HTML oldal megjelenítése kulcsszó alapján void AdvancedHelpDemo::ShowKeyword(CString keyword) HIBAÜZENET CALLBACK FÜGGVÉNYE POPUP TEXT void AdvancedHelpDemo::OnChangeEditSzilva() A HELP GOMB CALLBACK FÜGGVÉNYE oldal
2 2. Feladat: Helyzetérzékeny súgó készítése A Súgókörnyezet kiépítése I. munkafüzet alapján elkészített alkalmazásunkat egészítsük ki egy új párbeszédablakkal és rendeljünk ehhez a párbeszédablakhoz helyzetérzékeny súgó szolgáltatásokat. Párbeszédablakunkon az alábbi súgó szolgáltatásokat szeretnénk megvalósítani: OnOver funkció OnContextHelp() Ha egy vezérl (gomb, adatbeviteli mez ) fölött álldogál az egérkurzor, akkor egy adott id eltelte után jelenjen meg egy kis popup szöveg. A megjelenítend szöveget fájlban tároljuk. Ha egy vezérl (gomb, adatbeviteli mez ) fölött az egér jobb fülére kattintunk, akkor jelenjen meg angol nyelv popup szöveg. A megjelenítend szöveget fájlban tároljuk. Shift F1 vagy F1 használata Hibaüzenet Ha kiválasztunk egy vezérl t (gombot vagy adatbeviteli mez t), akkor a Shift F1 vagy F1 billenty leütésekor jelenjen meg az adott gombhoz illeszked HTML oldat. Ha egynél hosszabb számot próbálunk begépelni az alma adatbeviteli mez be, akkor jelenjen meg figyelmeztetés. 2. oldal
3 Helyi menü témakörök megjelenítése Ha a jobb egérfüllel a párbeszédablak szabad felületére kattintunk, akkor jelenjen meg egy színeket tartalmazó helyi menü. A szín kiválasztása után ajánljuk fel kiválasztásra a színhez tartozó témaköröket. Popup hibaüzenet HTML oldal megjelenítése önálló ablakban Ha a szilva adatbeviteli mez t módosítjuk, jelenjen meg egy a programban konstans stringben megadott megadott popup hibaüzenet. Ha a Help gombra kattintunk egy önálló ablakban jelenjen meg a párbeszédablakra vonatkozó HTML oldal. 3. oldal
4 A súgás alapjai Alkalmazásunkban a vezérl kre az úgynevezett vezérl azonosítókkal hivatkozhatunk (control ID). Ahhoz, hogy az alkalmazásunk használni tudja a súgókörnyezet egyes elemeit (pl. popup text, HTML oldal), a súgóelemeket is azonosítókkal kell ellátni (help ID), majd meg kell oldani az egyes vezérl k és a súgóelemek összerendelését. Az alábbi táblázatban felsoroltuk, hogy párbeszédablakunk vezérl ihez és súgóelmeihez milyen azonosítókat rendelünk. Control ID Help ID Ez a szöveg jelenik meg, amikor a kurzor a vezérl fölött várakozik. 1 Ez a szöveg jelenik meg, amikor leütjük az F1 ill. ShiftÓF1 billenty ket.. 2 Alma IDC_BUTTON_ALMA* IDH_BUTTON_ALMA Alma vagyok. It is an apple. IDC_EDIT_ALMA* IDH_EDIT_ALMA Hány almát kér? How many apples do you want? Körte IDC_BUTTON_KORTE* IDH_BUTTON_KORTE Körte vagyok. It is a pear. IDC_EDIT_KORTE* IDH_EDIT_KORTE Hány körtét kér? How many pears do you want? Szilva IDC_BUTTON_SZILVA* IDH_BUTTON_SZILVA Szilva vagyok. It is a pear. IDC_EDIT_SZILVA* IDH_EDIT_SZILVA Help IDC_BUTTON_HELP* IDH_BUTTON_HELP Párbeszédablak IDD_ADVANCED_HELP_DEMO IDH_ADVANCED_ HELP_DEMO OK IDOK IDH_BUTTON_OK Bezárja ezt a párbeszédpanelt, és menti az öszes változást. Cancel IDCANCEL IDH_BUTTON_CANCE L Hány szilvát kér? How many plums do you want? Bezárja ezt a párbeszédpanelt, és nem menti a változásokat. Súgó azonosítók definiálása (help ID) Definiáljuk súgó azonosítóinkat (help ID) egy szövegfájlban, és rendeljünk hozzá egyedi értékeket. A szövegfájl neve legyen ctrlhelp.h. A fájlt mentsük el az alkalmazásunk alkönyvtárába. ctrlhlp.h #define IDH_BUTTON_ALMA 1200 #define IDH_BUTTON_CANCEL 1210 #define IDH_BUTTON_KORTE 1220 #define IDH_BUTTON_OK 1230 #define IDH_BUTTON_SZILVA 1240 #define IDH_EDIT_ALMA 1250 #define IDH_EDIT_KORTE 1260 #define IDH_EDIT_SZILVA 1270 #define IDH_ADVANCED_HELP_DEMO 1020 #define IDH_BUTTON_HELP Ezt a szöveget a ctrlhelp.txt fájlban tároljuk. 2 Ezt a szöveget a ctrlhelp_english.txt fájlban tároljuk. 4. oldal
5 Súgó szövegek megadása Egy szövegfájlban adjuk meg, hogy az egyes súgó azonosítókra hivatkozva milyen magyar szöveget szeretnénk megjeleníteni. A szövegfájl neve legyen ctrlhelp.txt. A fájlt mentsük el az alkalm azásunk alá. (Ezek az üzenetek akkor jelennek meg, amikor az egér hosszasan id zik a vezérl felett.) ctrlhelp.txt.topic IDH_BUTTON_ALMA Alma vagyok..topic IDH_BUTTON_KORTE Körte vagyok..topic IDH_BUTTON_SZILVA Szilva vagyok..topic IDH_EDIT_ALMA Hány almát kér?.topic IDH_EDIT_KORTE Hány körtét kér?.topic IDH_EDIT_SZILVA Hány szilvát kér?.topic IDH_BUTTON_OK Bezárja ezt a párbeszédpanelt, és menti az öszes változást..topic IDH_BUTTON_CANCEL Bezárja ezt a párbeszédpanelt, és nem menti a változásokat..topic IDH_BUTTON_HELP A párbeszédpanel súgója. Egy szövegfájlban adjuk meg, hogy az egyes súgó azonosítókra hivatkozva milyen angol szöveget szeretnénk megjeleníteni. A szövegfájl neve legyen ctrlhelp_english.txt. Mentsük a fájlt az alkalmazásunk alkönyvtárába. (Ezek az üzenetek akkor jelennek meg, amikor F1-et vagy Shift+F1-et adunk..) ctrlhelp_english.txt.topic IDH_BUTTON_ALMA It is an apple..topic IDH_BUTTON_KORTE It is a pear..topic IDH_BUTTON_SZILVA It is a plum..topic IDH_EDIT_ALMA How many apples do you want?.topic IDH_EDIT_KORTE How many pears do you want?.topic IDH_EDIT_SZILVA How many plums do you want?.topic IDH_BUTTON_OK Closes the dialog and saves the changes..topic IDH_BUTTON_CANCEL Closes the dialog whithout changes..topic IDH_BUTTON_HELP About dialog box. 5. oldal
6 A párbeszédablak súgófájljának elkészítése Készítsük el a dialógusablak használatára vonatkozó ismereteket tartalmazó AdvancedHelpDemo.htm fájlt, és vegyük fel ezt a fájlt is súgó projektünk html oldalai közé. 1. Készítsük el az AdvancedHelpDemo.htm a fájlt és mentsük el alkalmazásunk html alkönyvtárába. 2. A Html Help Workshop segítségével nyissuk meg a HHDemo.hhp súgó projektet. 3. A Project fül kiválasztása után kattintsunk az Add/Remove topic files gombjára. 4. Vegyük fel a listába (Add) a fájlt. HHDemo.hhp [FILES] html\alma.htm... html\advancedhelpdemo.htm Súgó üzenetek felvétele a súgó projektbe 1. A Html Help Workshop segítségével nyissuk meg a HHDemo.hhp súgó projektünket (Ügyeljünk arra, hogy ne fusson a Visual C++ alkalmazásunk.) 2. A Project fül kiválasztása után kattintsunk a HtmlHelp API Information gombra. 3. Válasszuk ki a Text Pop-ups fület. 4. Kattintsunk a Header file gombra, majd jelöljük meg az el z pontban elkészített, az alkalmazásunk alkönyvtárában található ctrlhelp.h header fájlt. 5. A HtmlHelp API Information/Text Pop-ups fülén a Text file gombot kiválasztva megadhatjuk a súgószövegeket tartalmazó szövegfájljainkat. (ctrlhelp.txt és ctrlhelp_english.txt). HHDemo.hhp [TEXT POPUPS] ctrlhelp.h ctrlhelp.txt ctrlhelp_english.txt Súgó azonosítók és HTML oldalak összekapcsolása 1. A Html Help Workshop segítségével nyissuk meg a HHDemo.hhp súgó projektünket (Ügyeljünk arra, hogy ne fusson a Visual C++ alkalmazásunk.) 2. A Project fül kiválasztása után kattintson a HtmlHelp API Information gombra. 3. Válasszuk ki az ALIAS fület. 4. Adjuk meg, hogy mely súgóazonosítóval hivatkozunk az egyes HTML oldalra. 6. oldal
7 HHDemo.hhp [ALIAS] IDH_ADVANCED_HELP_DEMO=html\AdvancedHelpDemo.htm IDH_BUTTON_ALMA=html\alma.htm IDH_BUTTON_KORTE=html\korte.htm IDH_BUTTON_SZILVA=html\szilva.htm IDH_EDIT_ALMA=html\alma.htm IDH_EDIT_KORTE=html\korte.htm IDH_EDIT_SZILVA=html\szilva.htm 5. Válasszuk ki az Map fület és illesszük be ide is a ctrlhelp.h fájlunkat.. Ezzel rendelünk értékeket a 3-4 pontban bevezetett ALIAS nevekhez. (Mi az egyszer ség kedvéért ugyanazokat az azonosítókat használjuk a popup szövegek, ill. a HTML oldalak azonosítására is). HHDemo.hhp [MAP] #include ctrlhelp.h Új ablak felvétele a súgó projektbe Amikor a felhasználó a dialógusablakon a Help gombra kattint, akkor a párbbeszédablak használatára vonatkozó információ egy új ablakban jelenitjük meg, így azt nyitva lehet tartani a program futása alatt. 1. A Html Help Workshop segítségével nyissuk meg a HHDemo.hhp súgó projektünket (Ügyeljünk arra, hogy ne fusson a Visual C++ alkalmazásunk.) 2. A Project fül kiválasztása után kattintson az Add/Modify windows definitions gombra. 3. Definiáljon egy második ablakot az alábbiak szerint: GENERAL FÜL: Window type: Second Title bar text: Help Demo STYLES FÜL: Properties: Pop up Thick frame POSITION FÜL: Válassza ki az Autosizer gombot és állítsa be a kívánt ablakméretet. HHDemo.hhp [WINDOWS] Tripane="HHDemo HTML Help","toc.hhc","C:\Projects\hhDemo2\HHDemo\index.hhk",,,,,,,0 x2520,,0x3006,,,,,,,,0 Second=,"toc.hhc","index.hhk","html\intro.htm",,,,,,0x20,,,[2 71,372,593,566],0x ,,,,,,0 7. oldal
8 A HHDemo.hhp súgó projekt teljes listája HHDemo.hhp [OPTIONS] Compatibility=1.1 or later Compiled file=hhdemo.chm Contents file=toc.hhc Default Window=Tripane Default topic=html\intro.htm Display compile progress=no Full-text search=yes Index file=index.hhk Language=0x40e magyar Title=HHDemo Help [WINDOWS] Tripane="Html Help Demo Program","toc.hhc","C:\Projects\HHDemo\index.hhk",,,,,,,0x42520,,0x3006,,,,,,,,0 Second="Help Demo",,,,,,,,,,,0x0,[388,134,739,337],0x ,,,,,,0 [FILES] html\szilva.htm html\_topic_not_found.htm html\alma.htm html\eger.htm html\intro.htm html\kek.htm html\korte.htm html\kutya.htm html\macska.htm html\piros.htm html\sarga.htm html\advancedhelpdemo.htm [ALIAS] IDH_ADVANCED_HELP_DEMO=html\AdvancedHelpDemo.htm IDH_BUTTON_ALMA=html\alma.htm IDH_BUTTON_KORTE=html\korte.htm IDH_BUTTON_SZILVA=html\szilva.htm IDH_EDIT_ALMA=html\alma.htm IDH_EDIT_KORTE=html\korte.htm IDH_EDIT_SZILVA=html\szilva.htm [MAP] #include ctrlhelp.h [TEXT POPUPS] ctrlhelp.h ctrlhelp.txt ctrlhelp_english.txt [INFOTYPES] jegyzeteim Saját 8. oldal
9 A HtmlHelp API használata A súgó szövegek és a HTML oldalak megjelentetését a HtmlHelp API függvénnyel valósítjuk meg. A HtmlHelp API függvénynek deklarációja: BOOL HtmlHelp (HWND hwndmain, LPCTSTR lpszhelp, UINT ucommand, DWORD dwdata) ahol az els paraméter a szolgáltatást kér ablakra mutató pointer; a második paraméter egy string, melyben a súgó fájl nevét és helyét lehet megadni; a harmadik paraméter egy parancs (HtmlHelp command)., amellyel azt mondhatjuk meg, hogy milyen súgó szolgáltatást szeretnénk igénybe venni. Néhány parancs: HH_DISPLAY_TOC: A súgó fájl teljes tartalmának megjelentetése tartalomjegyzékkel együtt. HH_DISPLAY_TOPIC: súgó fájl egy adott témakörének megjelenítése HH_DISPLAY_TEXT_POPUP: Popup text megjelentetése HH_HELP_CONTEXT: A Map opcióban megadott súgótémák HTML oldalainak megjelentetése. a negyedik paraméter jelentése attól függ, hogy éppen milyen HtmlHelp parancsot készülünk kiadni. Itt adhatjuk meg az adott parancshoz szükséges további adatot. A HH_POPUP struktúra Egy popup szöveg megjelenítéséhez a HtmlHelp API függvényt a HH_DISPLAY_TEXT_POPUP paranccsal hívjuk meg. Ilyenkor a negyedik paraméter egy HH_POPUP struktúra. Itt adhatjuk meg a szöveg megjelenítésével kapcsolatos elvárásainkat: typedef struct taghh_popup int cbstruct; // sizeof this structure HINSTANCE hinst; // instance handle for string resource UINT idstring; // string resource id, or text id if pszfile is specified in HtmlHelp call LPCTSTR psztext; // used if idstring is zero POINT pt; // top center of popup window COLORREF clrforeground; // use -1 for default COLORREF clrbackground; // use -1 for default RECT rcmargins; // amount of space between edges of window and text, -1 for each member to ignore LPCTSTR pszfont; // facename, point size, char set, BOLD ITALIC UNDERLINE HH_POPUP; Illesszük be a htmlhelp.h header fájlt alkalmazásunk StdAfx.h headerfájljába, hogy ne egyesével kelljen beillesztgetnünk azt a HtmlHelp-et használó valamennyi osztályba. StdAfx.h #ifndef _AFX_NO_AFXCMN_SUPPORT #include <afxcmn.h> // MFC support for Windows Common Controls #include "htmlhelp.h" #endif // _AFX_NO_AFXCMN_SUPPORT oldal
10 A CSHButton osztály Az MFC CButton osztályát csak két esemény kezelésére készítették fel. Ha párbeszédablakunkra olyan gombot szeretnénk feltenni, amely figyeli a rajta id z egérkurzort, akkor ezt a funkciót nekünk kell megvalósítani. A CButton osztályból származtatva elkészítjük a helyzetérzékeny súgást biztosító gombok osztályát. Legyen az osztály neve CSHButton (Context Sesnsitive Help BUTTON). Az osztály SetHelpID metódusával beállíthatjuk az adott gombra vonatkozó súgóazonosítót. Az így el készített gombok a súgóazonosító alapján helyzetérzékeny módon súgnak. A CSHButton osztály létrehozása Insert/New Class Class Type: MFC Class Class Information/Name: CSHButton A Change gombra kattintva lehet módosítani a felajánlott fájlneveket (CSHButton,h, CSHButton,cpp) Base class: CButton A CSHButton osztály adattagjai m_helpid: Itt tároljuk a gombhoz rendelt súgó azonosító értékét. m_over: Logikai változó, melynek értéke akkor igaz, ha az egérkurzor a gomb fölött van. A CSHButton osztály konstruktorában inicializáljuk m_over adattagot. A CSHButton osztály metódusai GetHelpID: Visszaadja a gombhoz rendelt súgóazonosító értékét. SetHelpID: Beállítja a gomb súgóazonosítóját. ShowPopupText: A gomb fölött megjeleníti a súgóazonosítóhoz rendelt popup szöveget a paraméterben megadott színekben. CSHButton.h class CSHButton : public CButton... public: void SetHelpID(DWORD d); DWORD GetHelpID(); protected: DWORD m_helpid; bool m_over; void ShowPopupTex t(cstring textfile, COLORREF frg, COLORREF bkg );... ; CSHButton.cpp void CSHButton::SetHelpID(DWORD d) m_helpid=d; CSHButton::CSHButton() m_over=false; 10. oldal
11 CSHButton.cpp void CSHButton::ShowPopupText(CString textfile, COLORREF frg, COLORREF bkg ) //Find the good position CRect ctrlrect; GetClientRect(ctrlRect); CPoint msgpoint; msgpoint.x=ctrlrect.left+ctrlrect.width(); msgpoint.y=ctrlrect.bottom; ClientToScreen(&msgPoint); HH_POPUP popup ; RECT rrect ; // Set the popup's margins rrect.top = -1 ; rrect.left = -1 ; rrect.bottom = -1 ; rrect.right = -1 ; memset(&popup, 0, sizeof(hh_popup)); popup.cbstruct = sizeof(hh_popup); popup.hinst = 0; popup.idstring = m_helpid; popup.psztext =""; popup.pt = msgpoint; popup.clrforeground = frg; popup.clrbackground = bkg; popup.rcmargins = rrect; popup.pszfont = "Arial, 8, ascii,,, "; HtmlHelp( 0, "hhdemo.chm::/"+textfile, HH_DISPLAY_TEXT_POPUP, (DWORD)&popup) ; A CSHButton osztály eseménykezel metódusai Esemény Üzenet Tennivalók az esemény bekövetkezésekor Az egérkurzor a WM_MOUSEMOVE Létrehozunk egy id zít t egy adott id tartammal, gomb fölött van mert csak az itt beállított id elteltével szeretnénk megjeleníteni a magyar nyelv popup szöveget. Az m_over adattagot igazra állítjuk. Jobb kattintás WM_CONTEXT_HELP Megjelenítjük a gombhoz rendelt angol nyelv popup szöveget. F1 vagy Shift F1 WM_HELPINFO Megjelenítjük a gombhoz tartozó HTML oldalt. Letelt az id zít höz rendelt id tartam WM_TIMER Ha az egérkurzor még mindig a gomb fölött van, akkor megjelenítjük a popup szöveget, egyébként hamisra állítjuk az m_over adattagot. 11. oldal
12 View/ClassWizard/Message Maps Project:HHDemo Class name:cshbutton Object IDs: CSHButton Messages:WM_MOUSEMOVE void CSHButton::OnMouseMove(UINT nflags, CPoint point) if(m_over==false) //Ha most jöttünk a gomb fölé m_over = true; SetTimer(SHOW_POPUP_TIMER,1000,NULL); SetTimer(MOVE_OUT_TIMER,100,NULL); CButton::OnMouseMove(nFlags, point); View/ClassWizard/Message Maps Project:HHDemo Class name:cshbutton Object IDs: CSHButton Messages:WM_TIMER CSHButton.cpp void CSHButton::OnTimer(UINT nidevent) CRect btnrect; GetClientRect(btnRect); CPoint point(getmessagepos()); //get the current mouse position ScreenToClient(&point); switch(nidevent) case MOVE_OUT_TIMER: if (!(btnrect.ptinrect(point))) m_over=false; KillTimer(SHOW_POPUP_TIMER); KillTimer(MOVE_OUT_TIMER); break; case SHOW_POPUP_TIMER: if(m_over) COLORREF frg = 0; COLORREF bkg = RGB(255, 255, 208); ShowPopupText("ctrlhelp.txt",frg,bkg); KillTimer(SHOW_POPUP_TIMER); break; 12. oldal
13 Definiáljunk a CSHButton.cpp fájlban két ID ZÍT T. Ha az egérkurzor a gomb fölött van, akkor bekapcsoljuk a SHOW_POPUP_TIMER t és a popup szöveget akkor jelenítjük meg, amikor ez az id zít leketyegett. A MOVE_OUT_TIMER azt figyeli, hogy rajta vagyunk-e a gombon. Ha azt észleli, hogy az egér már nincs a gomb fölött, akkor törli a két id zít t. CSHButton.cpp #define new DEBUG_NEW #define SHOW_POPUP_TIMER 1 #define MOVE_OUT_TIMER 2 #undef THIS_FILE View/ClassWizard/Message Maps Project:HHDemo Class name:cshbutton Object IDs: CSHButton Messages:WM_CONTEXT_MENU void CSHButton::OnContextMenu(CWnd* pwnd, CPoint point) // TODO: Add your message handler code here ShowPopupText("ctrlhelp_English.txt",0,RGB(255, 0, 0)); Project:HHDemo Class name:cshbutton Object IDs: CSHButton Messages:WM_HELPINFO BOOL CSHButton::OnHelpInfo(HELPINFO* phelpinfo) // TODO: Add your message handler code here and/or call default return (HtmlHelp( 0, "hhdemo.chm>tripane", HH_HELP_CONTEXT, m_helpid)!=null) ; A CSHEdit osztály A CSHButton osztályhoz hasonlóan készítsük el a helyzetérzékeny adatbeviteli mez k osztályát. Ezt az osztályt a CEdit osztályból kell származtatni. Önálló feladat. 13. oldal
14 Az AdvancedHelpDemo osztály Készítse el benne az alábbi párbeszédablakot. A párbeszédablak osztályneve legyen AdvancedHelpDemo. (AdvancedHelpDemo.h, AdvancedHelpDemo.cpp). A párbeszédablak vezérl elemeinek (gomb, adatbeviteli mez ) azonosítására használja az alábbi táblázatot. A táblázat csillaggal (*) megjelölt vezérl inél feltétlenül kapcsolja be a Help ID kapcsolót. Control ID Caption Egyéb IDC_BUTTON_ALMA* Alma Help ID IDC_EDIT_ALMA* Help ID IDC_BUTTON_KORTE* Körte Help ID IDC_EDIT_KORTE* Help ID IDC_BUTTON_SZILVA* Szilva Help ID IDC_EDIT_SZILVA* Help ID IDC_BUTTON_HELP* Help Help ID IDD_ADVANCED_HELP_DEMO Advanced Help Demo - IDOK IDCANCEL OK Cancel 14. oldal
15 Az AdvancedHelpDemo osztály felkészítése súgásra A dialógusablak elkészítése után rendeljen változókat a vezérl khöz. Control ID Member variable name Category Variable type IDC_BUTTON_ALMA* m_button_alma Control CSHButton IDC_BUTTON_KORTE m_button_korte Control CSHButton IDC_BUTTON_SZILVA* m_button_szilva Control CSHButton IDC_BUTTON_HELP* m_button_help Control CSHButton IDC_EDIT_ALMA* m_edit_alma Control CSHEdit IDC_EDIT_KORTE* m_edit_korte Control CSHEdit IDC_EDIT_SZILVA* m_edit_szilva Control CSHEdit IDC_EDIT_ALMA m_alma Value CString (maximum characters 1) IDC_EDIT_SZILVA m_szilva Value int Megjegyzés: 1. Vegye észre, hogy a helyzetérzékeny gombok és adatbeviteli mez k típusai az újonnan bevezetett osztályok. 2. Az alma és a szilva adatbeviteli mez khöz Control és Value kategóriájú változó is tartozik. E két mez nél mutatjuk meg a hibaüzenetek kezelését. AdvancedHelpDemo.h #include "CSHButton.h" #include "CSHEdit.h" Ne feledkezzen meg a header fájlokról. // Dialog Data //AFX_DATA(AdvancedHelpDemo) enum IDD = IDD_ADVANCED_HELP_DEMO ; CSHEdit m_edit_szilva; CSHEdit m_edit_korte; CSHEdit m_edit_alma; CSHButton m_button_szilve; CSHButton m_button_korte; CSHButton m_button_help; CSHButton m_button_alma; CString m_alma; int m_szilva; //AFX_DATA 15. oldal
16 A párbeszédablak inicializálása: OnInitDialog A párbeszédablak inicializálásakor hozzárendeljük a vezérl khöz a súgóazonosítókat, és a ModifyStyleEx függvénnyel feltesszük a súgó kérd jelet az ablakra. AdvancedHelpDemo.cpp #include "ctrlhelp.h" BOOL AdvancedHelpDemo::OnInitDialog() CDialog::OnInitDialog(); // TODO: Add extra initialization here Ne feledkezzen meg a header fájlokról. ModifyStyleEx(0, WS_EX_CONTEXTHELP); m_button_alma.sethelpid(idh_button_alma); m_button_korte.sethelpid(idh_button_korte); m_button_szilva.sethelpid(idh_button_szilva); m_button_help.sethelpid(idh_button_help); m_button_ok.sethelpid(idh_button_ok); m_button_cancel.sethelpid(idh_button_cancel); m_edit_alma.sethelpid(idh_edit_alma); m_edit_korte.sethelpid(idh_edit_korte); m_edit_szilva.sethelpid(idh_edit_szilva); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE A Demo/Advaced Demo menüpont megadása Készítsük el a Demo/Advaced Demo menüpontot és az AdvancedHelpDemo párbeszédablakot felhívó callback függvényt. Project:HHDemo Class name: CMainFrame Object IDs: ID_DEMO_ADVANCED Messages:COMMAND CMainFrame.cpp #include "AdvancedHelpDemo.h" void CMainFrame::OnDemoAdvanced() // TODO: Add your command handler code here AdvancedHelpDemo dlg; if (dlg.domodal() == IDOK) return; Ne feledkezzen meg a header fájlokról. 16. oldal
17 Helyi menü a párbeszédablakon A jobb egérfüllel a párbeszédablak szabad felületére kattintva jelenjen meg a színeket tartalmazó helyi menü. A megfelel szín kiválasztása után ajánljuk fel az adott színhez tartozó témaköröket. Helyi menü megtervezése Az er forrás szerkeszt vel illesszünk be új menüt az alkalmazásunkba. Készítsünk el egy olyan menüpontot, amelynek a f menüje üres, és az almenüpontok pedig a színek nevei. (Kezdetben töltsük ki valamilyen fiktív szöveggel a f menüt is, mert különben nem tudjuk létrehozni az almenüpontokat. A f menü feliratát csak akkor töröljük, ha már egyszer lefordítottuk a programunkat, mert egyébként az osztályvarázsló nem vesz tudomást az almenü pontjainkról, és nem tudunk eseménykezel t rendelni hozzájuk. Control ID Caption IDR_COLOR_POPUP_MENU F menü - Üres!!! ID_POPUP_PIROS ID_POPUP_KEK ID_POPUP_SARGA Piros Kék Sárga! View/ClassWizard/Message Maps Project:HHDemo Class name:avancedhelpdemo Object IDs: AvancedHelpDemo Messages:WM_RBUTTTONDOWN AdvancedHelpDemo,cpp void AdvancedHelpDemo::OnRButtonDown(UINT nflags, CPoint point) // TODO: Add your message handler code here and/or call default CMenu menu; VERIFY(menu.LoadMenu(IDR_COLOR_POPUP_MENU)); CMenu* ppopup = menu.getsubmenu(0); ASSERT(pPopup!= NULL); ClientToScreen(&point); ppopup->trackpopupmenu (TPM_LEFTALIGN TPM_RIGHTBUTTON, point.x, point.y, this); CDialog::OnRButtonDown(nFlags, point); 17. oldal
18 " View/ClassWizard/Message Maps Project:HHDemo Class name:avancedhelpdemo Object IDs: ID_POPUP_PIROS Messages: COMMAND AdvancedHelpDemo.cpp void AdvancedHelpDemo::OnPopupPiros() // TODO: Add your command handler code here ShowKeyword("Piros szín"); Készítsük el a kék és a sárga színre is a menüpontokat. # $ % &'" Egy adott kulcsszóhoz tartozó témakörök megjelentetésére definiáljuk a ShowKeyword metódust: Workspace/ClassView/AdvancedHelpDemo/Jobb egérfül/add member function / Function type: void Function declaration: ShowKeyword(CString keyword) AdvancedHelpDemo.cpp void AdvancedHelpDemo::ShowKeyword(CString keyword) // TODO: Add your command handler code here HH_AKLINK link; link.cbstruct = sizeof(hh_aklink) ; link.freserved = FALSE ; link.pszkeywords = keyword ; link.pszwindow = "tripane" ; link.findexonfail = FALSE ; HtmlHelp( 0, "hhdemo.chm", HH_KEYWORD_LOOKUP, (DWORD)&link); 18. oldal
19 Hibaüzenet callback függvénye popup text View/ClassWizard/Message Maps Project:HHDemo Class name:avancedhelpdemo Object IDs: ID_EDIT_SZILVA Messages: EN_CHANGE AdvancedHelpDemo.cpp void AdvancedHelpDemo::OnChangeEditSzilva() // TODO: Add your control notification handler code here CRect ctrlrect; CWnd *pwnd=getfocus(); pwnd->getclientrect(ctrlrect); CPoint msgpoint; msgpoint.x=ctrlrect.left+ctrlrect.width(); msgpoint.y=ctrlrect.bottom-ctrlrect.height()/2; pwnd->clienttoscreen(&msgpoint); m_szilva=0; UpdateData(FALSE); HH_POPUP popup ; RECT rrect ; // Set the popup's margins rrect.top = -1 ; rrect.left = -1 ; rrect.bottom = -1 ; rrect.right = -1 ; memset(&popup, 0, sizeof(hh_popup)); popup.cbstruct = sizeof(hh_popup); popup.hinst = 0; popup.idstring = 0; popup.psztext =_tcsdup(_t("sajnos kifogyott a szilva.")); popup.pt = msgpoint; popup.clrforeground = RGB(255, 255, 255); popup.clrbackground = RGB(92, 143, 218); popup.rcmargins = rrect; popup.pszfont = "Arial, 8, ascii,,, "; HtmlHelp( 0, NULL, HH_DISPLAY_TEXT_POPUP, (DWORD)&popup) ; A Help gomb callback függvénye Ha a párbeszédablak Help gombjára kattintunk jelenjen meg egy új ablak és abban a dialógusablakhoz rendelt HTML oldal. View/ClassWizard/Message Maps Project:HHDemo Class name:avancedhelpdemo Object IDs: ID_BUTTON_HELP Messages: COMMAND 19. oldal
20 AdvancedHelpDemo.cpp void AdvancedHelpDemo::OnButtonHelp() // TODO: Add your control notification handler code here HtmlHelp( 0, "hhdemo.chm>second", HH_HELP_CONTEXT, IDH_ADVANCED_HELP_DEMO) ; 20. oldal
Szabóné Nacsa Rozália
Szabóné Nacsa Rozália 1 Egérmozgás figyelése Ctrlhelp.txt.topic IDH_BUTTON_ALMA Alma vagyok..topic IDH_EDIT_ALMA Hány almát kér? Ha egy gomb fölött álldogál az egérkurzor, akkor egy adott id eltelte után
Szabóné Nacsa Rozália. Feladat. Készítsünk el egy üres FormView alapú alkalmazást és építsünk köré egy súgó környezetet.
Szabóné Nacsa Rozália Feladat Készítsünk el egy üres FormView alapú alkalmazást és építsünk köré egy súgó környezetet. 1 Tartalom Tárgymutató 2 Keresés Menüpontok 3 HTML oldalak HTML oldalak felsorolása
Elemi alkalmazások fejlesztése
1. FELADAT: SÚGÓ KÖRNYEZET KIÉPÍTÉSE...2 A MEGOLDÁS STRATÉGIÁJA...3 INDULÓ PROJECT ELKÉSZÍTÉSE...3 HTML HELP WORKSHOP...3 HTML Help Workshop letöltése...3 A HTML Help Workshop installálása...3 A HTML Help
ADATBÁZISKEZELÉS KÖZVETLEN ELÉRÉSSEL II...2
ADATBÁZISKEZELÉS KÖZVETLEN ELÉRÉSSEL II...2 2. FELADAT: RENDEZETT LISTA...2 KÉSZITSÜK EL A FILLSORTEDDATA(INT SCOLUMN) SAJÁT METÓDUST!...2 void CBankView::FillSortedData(int scolumn)... 3 KÉSZITSÜK EL
Eseményvezérelt alkalmazások
Szabóné Nacsa Rozália nacsa@inf.elte.hu Eseményvezérelt alkalmazások A Windows alkalmazások eseményvezérelt alkalmazások Esemény: egér kattintás billenty leütés stb. Üzenetkezelés Operációs rendszer kódja
SDI ALKALMAZÁS I. Workspace / ResourceView / Toolbar / IDR_MAINFRAME. Workspace / ResourceView / Menu / IDR_MAINFRAME
SDI ALKALMAZÁS I. Feladat: Készítsünk egy olyan alkalmazást, amely az év végi adózás céljából rögzíti egyetlen évközi bevételnek az adatait: bruttó jövedelem adóel ı leg nettó bevétel jövedelem forrása
1. feladat. Szabóné Nacsa Rozália
1. feladat Készítsünk programot kisdiákoknak összeadás gyakorlására. Legyenek az operandusok 0-10 véletlen számok. Az = jel utáni szövegdobozban a kisdiáknak kell begépelni a megoldást. Az Értékelés gomb
Adatbázis-kezelés ODBC driverrel
ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...
Adabáziselérés ODBC-n keresztül utasításokkal C#-ban
Adabáziselérés ODBC-n keresztül utasításokkal C#-ban 1. Előkészítés Access adatbázis lemásolása, ODBC DSN létrehozása Másoljuk le az alábbiakat: Mit Honnan Hova list.mdb p:\johanyák Csaba\Vizualis programozas\data\
3. Osztályok II. Programozás II
3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt
Programozási technológia
Programozási technológia Swing GUI készítése NetBeans IDE segítségével Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Bevezető Eddig a grafikus felhasználói felületet kódból hoztuk létre kézzel. A mi
Java Programozás 5. Gy: Java alapok. Adatkezelő 1.rész
Java Programozás 5. Gy: Java alapok Adatkezelő 1.rész 27/1 B ITv: MAN 2018.04.13 Feladat Egy nagyon hosszú feladatmegoldásba kezdünk bele: létrehozunk egy adatkezelő programot, sok-sok extrával: 27/2 A
Swing GUI készítése NetBeans IDE segítségével
Programozási Swing e NetBeans IDE segítségével Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 2 Eddig a grafikus felhasználói felületet kódból hoztuk létre kézzel. A mi feladatunk volt az
Számítógépes grafika
Számítógépes grafika XXVIII. rész OpenGL Visual C++-ban Ha OpenGL programot szeretnénk létrehozni VisualC++-ban, három lehetőségünk van: Win32 alkalmazás, Win32 konzol alkalmazás és MFC platformon történő
Elemi alkalmazások fejlesztése IV. Adatbázis-kezelés ActiveX vezérlıkkel - 1
ADATBÁZIS-KEZELÉS ACTIVEX VEZÉRLİK ALKALMAZÁSÁVAL I.... 1 ACTIVEX... 1 ACTIVEX CONTROL... 1 SAJÁT ACTIVEX VEZÉRLİ LÉTREHOZÁSA... 1 circctrl.cpp... 2 Háttérszín tulajdonság hozzárendelése a vezérlıhöz...
A gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.
Vizuális programozás 1. A gyakorlat célja A gyakorlat célja a Könyvtár alkalmazás folytatása az előző gyakorlaton elkészített grafikus felület felhasználásával. Elsőként lemásoljuk az előző gyakorlat eredményeként
Access adatbázis elérése OLE DB-n keresztül
Access adatbázis elérése OLE DB-n keresztül Készítsünk egy grafikus felülető alkalmazást, ami lehetıvé teszi egy Access adatbázisban tárolt hallgatói adatok (EHA, Név, e-mail cím) lekérdezését (összes
Szoftvertechnolo gia gyakorlat
Szoftvertechnolo gia gyakorlat Dr. Johanyák Zsolt Csaba http://johanyak.hu 1. Dependency Injection (függőség befecskendezés) tervezési minta A tervezési minta alapgondolata az, hogy egy konkrét feladatot
C#, OOP. Osztályok tervezése C#-ban
C#, OOP Osztályok tervezése C#-ban OOP Létrehozás (creating) Megszüntetés (destroying) Túlterhelés (overlading) Felsorolás típus (enumerated types) 2 Hajó osztály Sailboat class using System; class Sailboat
Johanyák Zsolt Csaba: Grafikus felület programozása. http://www.johanyak.hu e-mail: johanyak.csaba@gamf.kefo.hu Copyright 2008 Johanyák Zsolt Csaba
Johanyák Zsolt Csaba: Grafikus felület programozása http://www.johanyak.hu e-mail: johanyak.csaba@gamf.kefo.hu Copyright 2008 Johanyák Zsolt Csaba 1. Gyümölcsárazó automata Készítsünk egy gyümölcsárazó
Sorosítás (szerializáció) és helyreállítás. 1. Bináris sorosítás és helyreállítás. 1.1. Szükséges névterek. 1.2. Attribútumok. 1.3.
Sorosítás (szerializáció) és helyreállítás Cél: a memóriában tárolt adatok egyszerű lemezre mentése és visszatöltése. A sorosítás során létrehozunk egy állományt és egy sorosítást kezelő objektumot. Ez
Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész
Java Programozás 9. Gy: Java alapok Adatkezelő 5.rész 15/1 B ITv: MAN 2018.04.22 A Keresés funkció Programlogika: 1. A keresés az etm táblamodellben fog keresni, és a találat rekordokat átmásolja egy másik
Széchenyi István Egyetem www.sze.hu/~herno
Oldal: 1/6 A feladat során megismerkedünk a C# és a LabVIEW összekapcsolásának egy lehetőségével, pontosabban nagyon egyszerű C#- ban írt kódból fordítunk DLL-t, amit meghívunk LabVIEW-ból. Az eljárás
munkafüzet open eseményéhez
Makrók használata az Excelben - munkafüzet open eseményéhez VBA-eljárás létrehozása Az Auto_Open makróval kapcsolatos fenti korlátozások megkerülhetők az Open eseményhez rendelt VBA-eljárással. Példa Auto_open
Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba
Ugráló gomb Készítsünk egy egyszerű játékprogramot, ami egy mozgó nyomógombot tartalmaz. A nyomógomb beállított ideig marad egy helyben, majd az ablakon számára elhatárolt terület (panel) egy véletlenszerűen
Programozás C++ -ban
Programozás C++ -ban 4. Bevezetés az osztályokba 4.1 Az adatokhoz való hozzáférés ellenőrzése Egy C programban a struktúrák minden része mindig elérhető. Ugyanakkor ez nem a legkedvezőbb helyzet. Több
1. Template (sablon) 1.1. Függvénysablon Függvénysablon példányosítás Osztálysablon
1. Template (sablon) 1.1. Függvénysablon Maximum függvény megvalósítása függvénynév túlterheléssel. i n l i n e f l o a t Max ( f l o a t a, f l o a t b ) { return a>b? a : b ; i n l i n e double Max (
Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe
Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével
components : IContainer dx : int dy : int tmidőzítő : Timer toolstripseparator1 : ToolStripSeparator tsmikilépés : ToolStripMenuItem
http:www.johanyak.hu Analóg óra Készítsünk egy analóg órát megjelenítő alkalmazást. A feladat egy lehetséges megoldása a következő: 1. Az alkalmazás vázának automatikus generálása Fájl menü, New, Project
1. Feladat: Lista mysql BANK UGYFEL
. Feladat: Lista Készítsünk el egy olyan egy dokumentumos (SDI) alkalmazást, amely alkalmas a mysql adatbáziskezel vel létrehozott BANK adatbázisunk UGYFEL táblájának megjelentetésére. UGYFEL tábla refszam
C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem
C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real
7. Előadás. Makrók alkalmazása. Salamon Júlia. Előadás I. éves mérnök hallgatók számára
7. Előadás Makrók alkalmazása. Salamon Júlia Előadás I. éves mérnök hallgatók számára Feltételes ciklusok Ha a ciklusváltozó intervallumát, előre nem tudjuk mert például a program futása során megszerzett
Segítség a megoldáshoz: 1. Készítse el a Window-t az ábrának és az osztálydiagramnak megfelelően.
Vizuális programozás gyakorlat Feladat: Készítsen WPF alkalmazást, amely segítségével az alábbi feladat megoldásában segítenek a tanulóknak, azaz a tanulók kipróbálhatják az egyes eseteket, és a megoldásukat
A Java nyelv. Dialógus ablakok. Elek Tibor
A Java nyelv Dialógus ablakok Elek Tibor Dialógus ablakok Szerepe: felbukkanó ablak (üzenet, input) Felépítése, használata majdnem ua., mint JFrame Tulajdonos: lehet tulajdonosa, amellyel együtt ikonizálódik,
BME MOGI Gépészeti informatika 7.
BME MOGI Gépészeti informatika 7. 1. feladat Írjon Windows Forms alkalmazást egy kör és egy pont kölcsönös helyzetének vizsgálatára! A feladat megoldásához hozza létre a következő osztályokat! Pont osztály:
Dr. Pétery Kristóf: CorelDRAW 9 testre szabás
2 Minden jog fenntartva, beleértve bárminemű sokszorosítás, másolás és közlés jogát is. Kiadja a Mercator Stúdió Felelős kiadó a Mercator Stúdió vezetője Lektor: Gál Veronika Szerkesztő: Pétery István
Adatbázis-kezelés ActiveX vezérl kkel 2.rész
Adatbázis-kezelés ActiveX vezérl kkel 2.rész Készítette: Szabóné Nacsa Rozália 2004. november Feladat Figyelmeztetés, Figyelmeztetés, ha ha betelt betelt a a csoport. csoport. Csoport Csoport kiválasztása
Miután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni:
Excel objektumok Az excelben az osztályokat úgynevezett class modulokként hozzuk létre. Miután létrehoztuk, szeretnénk neki beszédesebb nevet adni. A név változtatásához a következőt kell tenni: View-ba
Tartalomjegyzék 2. RENDSZER FELÉPÍTÉSE... 3
Tartalomjegyzék 1. BEVEZETŐ... 2 2. RENDSZER FELÉPÍTÉSE... 3 2.1. FELÜLET... 3 2.2. FELHASZNÁLÓI FUNKCIÓK... 4 2.2.1. Modulok... 4 2.2.2. Előzmények... 4 2.2.3. Lekérdezés működése, beállítások... 5 2.2.4.
Dokumentum létrehozása/módosítása a portálon:
Dokumentum létrehozása/módosítása a portálon: 1. Belépés a szerkesztőfelületre A következő webcímre belépve - http://www.zalaegerszeg.hu/licoms/login - megjelenik a szerkesztőfelület beléptető ablaka,
Smalltalk 3. Osztályok létrehozása. Készítette: Szabó Éva
Smalltalk 3. Osztályok létrehozása Készítette: Szabó Éva Metaosztály fogalma Mint korában említettük, a Smalltalkban mindent objektumnak tekintünk. Még az osztályok is objektumok. De ha az osztály objektum,
Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver
Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver Felhasználói leírás verzió: 1.0 1 TARTALOMJEGYZÉK 1. BEVEZETÉS... 3 2. ALAPKÉPERNYŐ... 3 3. MENÜSZERKEZET... 3 4. DOKUMENTUM ALÁÍRÁSA... 4
OOP #14 (referencia-elv)
OOP #14 (referencia-elv) v1.0 2003.03.19. 21:22:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_14-1 - E jegyzet
ReszlAd fájl, kitöltési útmutató:
1 ReszlAd fájl, kitöltési útmutató: A ReszlAd táblázat egy adott látogatás részletes adatait tartalmazza. A szaktanácsadó által hiánytalanul kitöltött, és elnevezett fájlt e-mail üzenetben kérjük elküldeni
PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19
PHP II. WEB technológiák Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 Tartalomjegyzék Objektum Orientált Programozás 1 Objektum Orientált Programozás Öröklődés 2 Fájlkezelés
Adatintegritás ellenőrzés Felhasználói dokumentáció verzió 2.0 Budapest, 2008.
Adatintegritás ellenőrzés Felhasználói dokumentáció verzió 2.0 Budapest, 2008. Változáskezelés Verzió Dátum Változás Pont Cím Oldal Kiadás: 2008.10.30. Verzió: 2.0. Oldalszám: 2 / 11 Tartalomjegyzék 1.
Osztály és objektum fogalma
Osztály és objektum fogalma A C++ programozási nyelv I. CPP1/ 1 Az osztály (class) class: adatok és módszerek (method) (függvények) együttese, amely absztrakt adattípusként működik. objektum: egy osztály
Hozzunk létre két rekordot a táblában, majd véglegesítsünk (commit):
Oracle adatbázis elérése A gyakorlat célja az, hogy a hallgató tapasztalatot szerezzen egy szerver oldali adatbázis kezelő rendszer elérésében, gyakorolja a vizuális eszközök és a kapcsolat nélküli (Disconnected
Rajz 06 gyakorló feladat
Rajz 06 gyakorló feladat Attribútumos szövegmező A feladat megoldásához szükséges fájlok: Rjz06k_Szelepház.ipt Feladat: Készítsen attribútumos szövegmezőt, ahol is a szövegmező rovatai a modell iproperties
SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók
SQL*Plus Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP dolgozó), DEPT osztály) "közönséges" felhasználók Adatszótár: metaadatokat tartalmazó, csak olvasható táblák táblanév-prefixek:
Informatika terméktervezőknek
Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások
E-Freight beállítási segédlet
E-Freight beállítási segédlet Az E-Freight rendszer működéséhez szükséges programok és beállítások v08 A legújabb verzióért kérjük, olvassa be az alábbi kódot: 1. Támogatott böngészők Az E-Freight az Internet
Google Maps használata OSM, mint alternatív térkép
OE-NIK 2012. március 19. Sicz-Mesziár János sicz-mesziar.janos@ nik.uni-obuda.hu Google Maps használata OSM, mint alternatív térkép Google Maps Jól használható külső library. Használatához regisztráció
C programozási nyelv
C programozási nyelv Előfeldolgozó utasítások Dr Schuster György 2011 május 3 Dr Schuster György () C programozási nyelv Előfeldolgozó utasítások 2011 május 3 1 / 15 A fordítás menete Dr Schuster György
Szerző. Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: Név: vp.05@hotmail.com Kurzuskód:
Szerző Név: Varga Péter ETR azonosító: VAPQAAI.ELTE Email cím: vp.05@hotmail.com Kurzuskód: IP-08PAEG/27 Gyakorlatvezető neve: Kőhegyi János Feladatsorszám: 20 1 Tartalom Szerző... 1 Felhasználói dokumentáció...
Szabadkai Műszaki Szakfőiskola. Web programozás. dr Zlatko Čović chole@vts.su.ac.rs
Szabadkai Műszaki Szakfőiskola Web programozás dr Zlatko Čović chole@vts.su.ac.rs 1 DOM események (events) JavaScriptben interaktív programok készítésére az események által vezérelt programozási modellt
Jelentkezési lap képző szervek részére
Jelentkezési lap képző szervek részére Felhasználói segédlet Tartalomjegzék Belépés Jelentkezési lap felület Kézi kitöltés menete Alapadatok megadása Korábban megszerzett vezetői engedély adatai Személyes
Adatbázis-kezelés API hívásokkal. Adatbázis-kezelés ODBC-vel. Adatbázis-kezelés SQL parancsokkal. Adatbázis-kezelés ODBC-vel.
Adatbázis-kezelés API hívásokkal hívások Adatbázis-kezelés -vel Készítette: Szabóné Nacsa Rozália 2004. november API 2 API 2 hívások Adatbázis-kezelés parancsokkal Adatbázis-kezelés -vel eljárások 1 parancsok
1.1.1 Dátum és idő függvények
1.1.1 Dátum és idő függvények Azt már tudjuk, hogy két dátum különbsége az eltelt napok számát adja meg, köszönhetően a dátum tárolási módjának az Excel-ben. Azt is tudjuk a korábbiakból, hogy a MA() függvény
Eseményvezérelt és objektumorientált programozás
DIALOG BOXES, DATA BINDING, STYLES, TRIGGERS WPF 1 Készítsük el a hallgatók és az oktatók nyilvántartását megvalósító modult. Mindkettő hasonló módon működik, ezért az alábbi leírásban csak a hallgatói
Első lépések. File/New. A mentés helyét érdemes módosítani! Pl. Dokumentumok. Fájlnév: pl. Proba
Első lépések File/New A mentés helyét érdemes módosítani! Pl. Dokumentumok Fájlnév: pl. Proba (megj. ékezetes karaktereket nem használhatunk a fájlnévben) 1 Konvejor pálya elkészítése System/New Rendszer
Pénzügyi algoritmusok
Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök
Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész
Java Programozás 6. Gy: Java alapok Adatkezelő 2.rész 25/1 B ITv: MAN 2018.04.13 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki a Lista panelt - Betöltéskor olvassuk be az adatokat
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7 1.1. Új virtuális gép és Windows Server 2008 R2 Enterprise alap lemez létrehozása 1.2. A differenciális lemezek és a két új virtuális
Egészítsük ki a Drupal-t. Drupal modul fejlesztés
Egészítsük ki a Drupal-t Drupal modul fejlesztés Drupal 6.0 2008. február 13. Miért írjunk Drupal modult? Nincs az igényeinknek megfelelő modul Valamilyen közösségi igény kielégítése Valami nem úgy működik
Osztályok. 4. gyakorlat
Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum
Stateless Session Bean
Stateless Session Bean Készítsünk egy stateless session bean-t, amellyel összeadhatunk két számot. Hozzunk létre egy Dynamic Web projectet File New Other itt a következőket kell választani: Web Dynamic
New Default Standard.ipt
Adaptív modellezési technika használata Feladat: Készítse el az alábbi ábrán látható fejes szeg parametrikus modelljét! A kidolgozáshoz használja az MSZ EN 22341-es szabványban megadott értékeket! 1 1.
C++ programozási nyelv Konstruktorok-destruktorok
C++ programozási nyelv Konstruktorok-destruktorok Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/20 Tartalomjegyzék
ArcGIS 8.3 segédlet 5. Dr. Iványi Péter
ArcGIS 8.3 segédlet 5. Dr. Iványi Péter Térképek prezentálása Tartalomjegyzék Az elkészített analízis eredményeit, vagy egyszerűen magát a térképet prezentálni is kell. Ez azt jelenti, hogy össze kell
Oktatás. WiFi hálózati kapcsolat beállítása Windows XP és Windows 7-es számítógépeken. SZTE Egyetemi Számítóközpont
Oktatás WiFi hálózati kapcsolat beállítása Windows XP és Windows 7-es számítógépeken SZTE Egyetemi Számítóközpont WLAN kapcsolat beállítása 1 Tartalom Windows XP... 2 Tanúsítvány telepítése... 2 WPA2 védett
Programozás C és C++ -ban
Programozás C és C++ -ban 2. További különbségek a C és C++ között 2.1 Igaz és hamis A C++ programozási nyelv a C-hez hasonlóan definiál néhány alap adattípust: char int float double Ugyanakkor egy új
Ozeki Weboffice. 1. ábra
Ozeki Weboffice 1. A program indítása Először vegyük fel a szerkesztendő web oldalt az Edit your Website listába. A piros nyíllal jelölt mezőbe írjuk be a weboldal nevét, majd az OK gombbal érvényesítsük
Java Programozás 8. Gy: Java alapok. Adatkezelő 4.rész
Java Programozás 8. Gy: Java alapok Adatkezelő 4.rész 37/1 B ITv: MAN 2018.04.15 A feladat Feladat: folytassuk a panel életre keltését! - Készítsük el a Módosítás funkciót - A Lista panelt másoljuk le,
1. Origin telepítése. A telepítő első képernyőjén kattintson a Next gombra:
1. Origin telepítése Az Origin telepítéséhez tegye be az Origin CD-t a CDROM-ba, majd kattintson az Origin 7.5 hivatkozásra, miután elindult a CD behelyezésekor a telepítő program. Ha nem indulna el a
Egyszerűbb a Google keresőbe beírni a Sharepoint Designer 2007 letöltés kulcsszavakat és az első találat erre a címre mutat.
A feladat megoldásához a Sharepoint Designer 2007 programot használjuk, mely ingyenesen letölthető a Microsoft weboldaláról. Az érettségi aktuális szoftverlistája alapján az Expression Web 2, az Expression
Tájékoztató a kollégiumi internet beállításához
Tájékoztató a kollégiumi internet beállításához V 1.3 A támogatott operációs rendszerekhez tartozó leírás hamarosan bıvülni fog, jelenleg a következı leírásokat tartalmazza: Windows XP, Windows Vista,
C# osztályok. Krizsán Zoltán
C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC
4. Gyakorlat: Csoportházirend beállítások
4. Gyakorlat: Csoportházirend beállítások 4.1. A Default Domain Policy jelszóra vonatkozó beállításai 4.2. Parancsikon, mappa és hálózati meghajtó megjelenítése csoport házirend segítségével 4.3. Alkalmazások
OOP: Java 8.Gy: Abstract osztályok, interfészek
OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus
TvNetTel Internet Kapcsolat Beállítása
TvNetTel Internet Kapcsolat Beállítása A TvNetTel Kft internetes szolgáltatásának igénybevételéhez szükséges a hálózati csatlakozás beállítása a számítógépen vagy routeren. A beállításhoz szükség van a
Szoftvertechnolo gia 7. gyakorlat
Szoftvertechnolo gia 7. gyakorlat Román Gábor 1. Feladat Készítsen az alábbi leírás alapján egy Egyed kapcsolat (EK) diagramot, majd annak alapján Visual Studio 2013-ban Entity Framework entitás diagramot!
C# osztálydeníció. Krizsán Zoltán 1. .net C# technológiák tananyag objektum orientált programozás tananyag
C# osztálydeníció Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem.net C# technológiák tananyag objektum orientált programozás tananyag Tartalom 1 Bevezetés 2 Osztály létrehozása, deníció
Adatbázis-kezelés ODBC-vel
Adatbázis-kezelés ODBC-vel Készítette: Szabóné Nacsa Rozália 2004. november Adatbázis-kezelés API hívásokkal Alkalmazás Adatbázis 1 API 1 API 1 hívások Adatbázis 2 API 2 Alkalmazás API 2 hívások Adatbázis-kezelés
VISUAL BASIC ALAPISMERETEK
11. Grafika VISUAL BASIC ALAPISMERETEK 11. Gyakorlat témaköre: Kiválasztógomb (Option Button) és a jelölőnégyzet (CheckBox) használata Kör, ellipszis (Circle) rajzolása. Circle (X, Y), Sugár, QBColor(Szín),
Felhasználó által definiált adattípus
Felhasználó által definiált adattípus C++ Izsó Tamás 2017. február 24. Izsó Tamás Felhasználó által definiált adattípus/ 1 Irodalom Izsó Tamás Felhasználó által definiált adattípus/ 2 Programtervezési
Közegek és felületek megadása
3. Előadás Közegek és felületek megadása A gyakorlatban nem közömbös, hogy az adott közeg milyen anyagi tulajdonságokkal bír. (Törésmutató, felület típusa, érdessége ) Lehetőség van az anyagok közegének,
Nyolcbites számláló mintaprojekt
Nyolcbites számláló mintaprojekt 1. Bevezető A leírás egy nyolcbites számláló elkészítésének és tesztelésének lépéseit ismerteti. A számláló értéke az órajel felfutó élének hatására növekszik. A törlőgombbal
Tartalomjegyzék. Általános Információ! 2. Felhasználói dokumentáció! 3. Feladat! 3. Környezet! 3. Használat! 3. Bemenet! 3. Példa!
Tartalomjegyzék Általános Információ! 2 Felhasználói dokumentáció! 3 Feladat! 3 Környezet! 3 Használat! 3 Bemenet! 3 Példa! 3 A program eredménye! 3 Példa! 3 Hibalehetőségek! 3 Példa! 3 Fejlesztői dokumentáció!
és az instanceof operátor
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Kezelési útmutató Nyomtatás
NORM.DOK GEOTECHNIKA Kezelési útmutató Kezelési útmutató Nyomtatás Ön a NORM.DOK GEOTECHNIKA rendszer kezelési útmutatójának azt részét olvassa, mely részletezi, Ön miként tudja az éppen megjelenített
WCF, Entity Framework, ASP.NET, WPF 1. WCF service-t (adatbázissal Entity Framework) 2. ASP.NET kliens 3. WPF kliens
WCF, Entity Framework, ASP.NET, WPF 1. WCF service-t (adatbázissal Entity Framework) 2. ASP.NET kliens 3. WPF kliens Hozzunk létre egy ASP.NET Empty Web Site projektet! A projekt neve legyen WCFAPP1. Ez
Táblázatok. Táblázatok beszúrása. Cellák kijelölése
Táblázatok Táblázatok beszúrása A táblázatok sorokba és oszlopokba rendezett téglalap alakú cellákból épülnek fel. A cellák tartalmazhatnak képet vagy szöveget. A táblázatok használhatók adatok megjelenítésére,
Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
A CAPICOM ActiveX komponens telepítésének és használatának leírása Windows7 operációs rendszer és Internet Explorer 8-es verziójú böngésző esetén
A CAPICOM ActiveX komponens telepítésének és használatának leírása Windows7 operációs rendszer és Internet Explorer 8-es verziójú böngésző esetén Tartalomjegyzék 1. A CAPICOM ACTIVEX KOMPONENS TELEPÍTÉSE...3
Thermo1 Graph. Felhasználói segédlet
Thermo1 Graph Felhasználói segédlet A Thermo Graph program a GIPEN Thermo eszközök Windows operációs rendszeren működő grafikus monitorozó programja. A program a telepítést követően azonnal használható.
Webszolgáltatás és XML alapú adatbázis. 1. Az adatbázis megtervezése
Webszolgáltatás és XML alapú adatbázis A segédlet célja az, hogy a teljesség igénye nélkül egy egyszerű példán keresztül bemutassa, hogy hogyan készíthetünk egy olyan kétrészes (kétrétegű) alkalmazást,
1. A NÉPESSÉGNYILVÁNTARTÓ PROGRAM TELEPÍTÉSI FELTÉTELE. A
1. A NÉPESSÉGNYILVÁNTARTÓ PROGRAM TELEPÍTÉSI FELTÉTELE. A következıkben leírt telepítési lépések, csak azokon a gépeken végezhetık el, ahol elızıleg is üzemelt már a DECÉRT rendszer, mivel a programhoz
WINDOWS TELEPÍTÉSI ÉS AKTIVÁLÁSI ÚTMUTATÓ A FOTOBETYAR.HU - PHOTOSHOP PLUGINJEIHEZ
WINDOWS TELEPÍTÉSI ÉS AKTIVÁLÁSI ÚTMUTATÓ A FOTOBETYAR.HU - PHOTOSHOP PLUGINJEIHEZ Köszöntünk! Jó döntést hoztál, hogy az általunk fejlesztett plugineket választottad, nézzük is meg gyorsan, hogyan tudod
RAJZ1. vezetett gyakorlat
Inventor R4 1 Rajz1. vezetett gyakorlat RAJZ1. vezetett gyakorlat Műhelyrajz készítés A feladat megoldásához szükséges fájlok: Tutorial Files\body1 Feladat: Készítse el a szelepház műhelyrajzát! 1) Indítson