Java Programozás 2. Gy: EmpProgram. Grafikus felületű adatkezelő program

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Java Programozás 2. Gy: EmpProgram. Grafikus felületű adatkezelő program"

Átírás

1 Java Programozás 2. Gy: EmpProgram Grafikus felületű adatkezelő program 110/1 B ITv: MAN

2 EmpProgram A programosztály A cél: olyan grafikus felületű program elkészítése, mellyel a következő szerkezetű adatsor kezelhető: Kód, név, születési idő, lakóhely, iq A megvalósítandó műveletek: Adatok tárolása (írás, olvasás) különböző típusú fájlokban: Most csak sima szövegfájlban Adatok beszúrása Listázás Adatok módosítása Adatok törlése 110/2

3 A projekt létrehozása File \ New \ Java project Name: LevJprogGyak 110/3

4 EmpProgram A projekten állva: Fájl\New\Swing\JFrame 110/4

5 Layout (elrendezés) beállítása Váltsunk Design felületre! Helyi menüből (jobb klikk) adjuk ki a parancsot: Set Layout \ Absolute layout Így kikapcsoljuk az elrendezés menedzselést, és minden ott fog megjelenni, ahová rakjuk! 110/5

6 Panel háttérszín beállítása Panel legyen kijelölve! 110/6 2x

7 Nyomógombok készítése Középső területen: Components \ JButton Bal oldalon: Variable: bb Bal oldalon: Properties \ text: Betöltés Ezután duplán kattintsunk a Betöltés gombra, így az Eclipse hozzáad egy akciókezelőt a gomb kódjához (és átvált a kódra) 110/7

8 Nyomógombok készítése Kódban átalakítjuk a gomb tulajdonságait! Itt is át lehet írni az adatokat (változónév, elhelyezkedés, méret, de egyszerűbb a Design nézeten!) 110/8 Dizájn felület Futtatási felület

9 Nyomógombok készítése másolással 1. Váltsunk Design nézetre 2. Kijelöljük a meglévő (beállított) gombot, és Ctrl + C 3. Ezután Ctrl + V, és a megfelelő helyre rakjuk a gombot 4. Beállítjuk a tulajdonságait (Properties) Legördítve szerkeszthető 110/9

10 Nyomógombok készítése másolással 1. Bezár gomb létrehozása másolással, beállítása panelen 2. Eseménykezelő hozzáadása: 1. Jobb klikk a gombra 2. Add event handler \ action \ actionperformed Egyszerűbb duplán kattintani! 3. Kódban beírni: System.exit(0); 110/10 bz.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { System.exit(0); );

11 Feliratok elkészítése JLabel hozzáadása, beállítása A másodikat egyszerűbb másolni! 110/11

12 Legördíthető lista elkészítése JComboBox elem hozzáadása a panelhez Változó nevének módosítása (jcbf) 110/12

13 Legördíthető lista elemek hozzáadása Kódban módosítások: String elem[] = {"Válasszon!","Helyi.dat fájl", "Helyi.xml fájl","helyi.csv fájl","sqlite DB", "Web: JSON fájl"; JComboBox jcbf = new JComboBox(); for (String s: elem) jcbf.additem(s); Kipróbálás: Meglévő kódsor 110/13 Futtatási felület

14 Szövegmezők hozzáadása Dizájn felületen: 110/14

15 Szövegmezők hozzáadása Dizájn felületen: 110/15

16 Legördíthető lista események kezelése Dizájn felületen módosítás: Kódban: private String forras="válasszon!"; 110/16 Eseménykezelő hozzáadása: 1. Jobb klikk a JComboBox-ra 2. Add event handler \ action \ actionperformed JComboBox jcbf = new JComboBox(); for (String s: elem) jcbf.additem(s); jcbf.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { forras = (String)jcbf.getSelectedItem(); ); fnev.settext(forras); fdb.settext("4"); Meglévő kódsorok Kipróbálás, tesztelés miatt! Rövidesen módosítjuk!

17 Legördíthető lista próba Futtassuk a programot: Futtatási felület 110/17

18 Hozzuk létre az Emp.csv fájlt Bárhol lehet a fájlrendszerben! Olyan szövegfájl, mely első sorában tartalmazza a mezők nevét, ezután soronként az adatokat, pontosvesszővel elválasztva! Jobb klikk egy mappában \ Új \ Szöveges dokumentum Adjuk meg a nevét: Emp.csv Íjuk be az adatokat, mentsük le! 110/18

19 Magyarázatok Programlogika: 1. Kiválasztjuk a forrást 2. A Betöltés gombra kattintva megjelenik egy fájlválasztó panel A panelen csak olyan kiterjesztésű fájlt választhatunk ki, amilyen a kiválasztott forrás típusa! 3. Válasszunk ki a panelen egy fájlt 4. A kiválasztott fájl neve íródjon ki a forrás melletti mezőbe 5. Olvassuk be az adatokat, és írjuk ki a számukat 110/19

20 Betöltés eseménykezelő hozzáadása Design felületen kattintsunk duplán a Betöltés gombra, aztán módosítsuk a kódot: JButton bb= new JButton("Bet\u00F6lt\u00E9s"); bb.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (forras.equals("helyi.csv fájl")) { FileDialog példányosítása FileDialog fd = new FileDialog(new Frame(), " ", FileDialog.LOAD); ); 110/20 Csak.csv fájlok jelenjenek meg fd.setfile("*.csv"); fd.setvisible(true); FileDialog láthatóvá tétele if (fd.getfile()!= null) { fbe = new File(fd.getDirectory(), fd.getfile()); String befnev = fd.getfile(); fnev.settext(befnev); Könyvtár és fájlnév, együtt a fájl! Importok szükségesek a FileDialog és a File miatt, és kell az fbe változó deklarációja is!

21 Betöltés csv esemény kódja Szükséges importok, változók: import java.io.*; import java.awt.*; private File fbe; FileDialog panel 110/

22 Kis kitérő: DataManager osztály Készítsünk egy olyan metódust, amivel üzenetpanelt tudunk megjeleníteni. A metódus neve legyen SMD, paraméterei: megjelenítendő üzenet, ikon típusa (int). A metódus a DataManager osztályba kerüljön, így ebből bármikor meghívható bármelyik osztályból import javax.swing.joptionpane; public class DataManager { public void SMD(String mes, int type) { JOptionPane.showMessageDialog(null, mes, "EmpProgram üzenet", type); 110/22

23 További módosítások Szükséges deklaráció: private DataManager DM = new DataManager(); Ha nincs kiválasztva forrás, a Betöltés megnyomása dobjon hibaüzenetet: JButton bb= new JButton("Bet\u00F6lt\u00E9s"); bb.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (forras.equals("válasszon!")) DM.SMD("Először válassza ki a Forrás-t!", 0); ); if (forras.equals("helyi.csv fájl")) { /

24 További módosítások Hiányzott valamilyen import, ezen berágtam, és a meglévő összes importot kitöröltem, és helyettesítettem a következővel: import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; Egy hibás sor maradt, valamilyen EmptyBorder. Mondtam kétszer az Eklipsznek, hogy ha akarja, javítsa ki, de nem akarta. Így ezt a sort kitöröltem! Nem haragszom az Eklipszre, csak azt érezteti velem, hogy felsőbb rendű mint én, és ezt nem szeretem! 110/24

25 Próba Nekem működik a kód! 110/25

26 Lista panel kialakítás a panel létrehozása 110/26

27 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki a Lista panelt - Betöltéskor olvassuk be az adatokat a fájlból, és írjuk ki az adatsorok számát 110/27

28 Lista panel kialakítás tábla modell létrehozása A táblázat kezelése egy táblamodellel kezdődik. A modellben lehet megadni az egyes mezők típusát és szerkeszthetőségét. A DefaultTableModel leszármaztatásával jön létre, konstruktorában kapja meg a mezőneveket, és az oszlopok számát. Programlogika: 1. Egy modellt használnánk csak a programban az egyszerűség miatt 2. A módosításnál és a törlésnél ki kell jelölni egy rekordot, így szükséges egy jelölhető (logikai típusú) mező a sor elejére 3. A mezők típusa rendre: logikai, egész, szöveg, szöveg, szöveg, egész 3. Csak a legelső (logikai) mezőnek kell szerkeszthetőnek lennie (a kijelölhetőség miatt!) 110/28

29 Lista panel kialakítás tábla modell létrehozása File \ New \ Class - Neve legyen: EmpTM 110/29

30 Lista panel kialakítás tábla modell létrehozása import javax.swing.table.defaulttablemodel; public class EmpTM extends DefaultTableModel { public EmpTM (Object fildnames[], int rows){ super(fildnames, rows); 110/30 Zöld: kötelező rész, minden táblamodellben egyforma! Konstruktor: megkapja a mezők nevét és a sorok számát. public boolean iscelleditable(int row, int col) { if (col == 0) {return true; return false; Szerkeszthetőség: a 0. oszlop minden sora szerkeszthető, a többi cella nem! public Class<?> getcolumnclass(int index){ if (index == 0) return(boolean.class); else if (index==1 index==5) return(integer.class); return(string.class); Oszlopok típusa: a 0. oszlop logikai, az 1. és az 5. egész, a többi szöveges!

31 Lista panel kialakítás a panel létrehozása New \ Swing \ JDialog Vegyük ki a pipát! Utólag törölhető a panel, ha mégis marad a pipa! 110/31

32 Lista panel kialakítás a panel létrehozása Vegyük szélesebbre az ablakot 110/32

33 Lista panel kialakítás a panel létrehozása Kapcsoljuk ki az elrendezés menedzselését! 110/33

34 Lista panel kialakítás a panel létrehozása Hozzuk létre a Bezár nyomógombot 110/34

35 Lista panel kialakítás a panel létrehozása Adjunk a panelhez egy JTable-t. 110/35

36 Lista panel kialakítás a panel létrehozása Adjunk a JTable-höz egy JScrollPane-t (görgetősávok) /36

37 Lista panel kialakítás a panel létrehozása Futtassuk a kódot, nézzük meg a panelt! 110/37

38 Lista panel kialakítás a panel létrehozása Kódbűvölés következik! Az osztály elejére: private EmpTM etm; A JTable kódjába: A kódból töröljük a main függvényt! table = new JTable(etm); A táblázatban az etm modell fog megjelenni Nem lesz önállóan futtatható a panel, ezért nem kell bele a main függvény! 110/38

39 Lista panel kialakítás a panel létrehozása Alakítsuk át a konstruktor elejét: public EmpList(JFrame f, EmpTM betm) { super(f, "Dolgozók listája", true); etm = betm; Tulajdonos, ablak címe, modális jelző A konstruktor kódjának végére írjuk be a következőket: Modális ablak lesz, melyet be kell zárni ahhoz, hogy az alatta lévő ablak újra aktív legyen! TableColumn tc = null; for (int i = 0; i < 6; i++) { tc = table.getcolumnmodel().getcolumn(i); if (i==0 i==1 i==5) tc.setpreferredwidth(30); else {tc.setpreferredwidth(100); 110/ Oszlopszélesség megadása: a teljes szélességet felosztja az itt megadott értékek arányában!

40 Lista panel kialakítás a panel létrehozása A konstruktor kódjának végére írjuk be a következőket: table.setautocreaterowsorter(true); AutoSorter bekapcsolása TableRowSorter<EmpTM> trs = (TableRowSorter<EmpTM>)table.getRowSorter(); trs.setsortable(0, false); A 0. oszlop rendezhetőségének letiltása 110/40

41 Lista panel kialakítás a panel bezárása Kattintsunk duplán a Bezár gombon Dizájn nézetben, így az Eklipsz hozzáad egy eseménykezelőt a gombhoz, és megnyitja a kódot! Írjuk be a Bezár gomb kódját: JButton btnnewbutton = new JButton("Bez\u00E1r"); btnnewbutton.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { dispose(); setvisible(false); ); dispose(): eltűnik a képernyőről a panel, de a referenciái megmaradnak. 110/41 setvisible(false): eltűnik a képernyőről a panel, de a referenciái megmaradnak. A két utasítás hatása ugyanaz, elég az egyiket használni!

42 A Lista panel megjelenítése (az EmpProgramban) Kódok beszúrása: Az osztály elejére: private EmpTM etm; A Lista gomb kódja: JButton bl = new JButton("Lista"); bl.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { EmpList el = new EmpList(EmpProgram.this, etm); el.setvisible(true); Megjelenítés ); Példányosítás A konstruktor végére: Mezőnevek megadása Object emptmn[] = {"Jel","Kód","Név","Szülidő","Lakóhely","IQ"; etm = new EmpTM(emptmn, 0); etm példányosítása: mezőnevekkel, 0 darab sorral 110/42

43 A Lista panel kipróbálása (az EmpProgramban) 110/43

44 Adatok beolvasása csv fájlból Programlogika: 1. Egy külön osztályba tegyük a fájlkezelő rutinokat (FileManager) 2. A rutin megkapja a beolvasandó fájl nevét, és a táblamodell nevét 3. Beolvassa az adatokat, soronként hozzáadja a táblamodellhez, és visszaadja a táblamodellt Létrehozása: File \ New \ Class Név: FileManager 110/44

45 Adatok beolvasása csv fájlból import java.io.*; import javax.swing.joptionpane; 3/1 public class FileManager { private DataManager DM = new DataManager(); public static void CsvReader(File fnev, EmpTM etm) { try { BufferedReader in = new BufferedReader(new FileReader(fnev)); BufferedReader: pufferelt szövegolvasó. A fájlból egyszerre max kb-ot olvas be a memóriába, és onnan lehet soronként kiolvasni az adatokat. 110/45

46 Adatok beolvasása csv fájlból String s=in.readline(); //=== mezőnevek az első sorból 3/2 s=in.readline(); //=== adatsor while(s!=null) { String[] st = s.split(";"); etm.addrow(new Object[]{false, StoI(st[0]), st[1], st[2], st[3], StoI(st[4])); s=in.readline(); addrow: sor hozzáadása a táblamodellhez in.close(); DM.SMD("Adatok beolvasva!", 1); catch (IOException ioe) { DM.SMD("CsvReader: "+ioe.getmessage(), 0); 110/46 s 21;Kő Éva; ;Miskolc;118 st 21 s.split(";"); Kő Éva Miskolc 118

47 Adatok beolvasása csv fájlból public static int StoI(String s){ int x=-55; x = Integer.parseInt(s); return x; 3/3 110/47

48 Betöltés a.csv olvasás életre keltése A Betöltés gomb kódja az EmpProgram osztályban JButton bb= new JButton("Bet\u00F6lt\u00E9s"); bb.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (forras.equals("helyi.csv fájl")) { FileDialog fd = new FileDialog(new Frame(), " ", FileDialog.LOAD); ); 110/48 fd.setfile("*.csv"); A meglévő kód fd.setvisible(true); if (fd.getfile()!= null) { fbe = new File(fd.getDirectory(), fd.getfile()); String befnev = fd.getfile(); fnev.settext(befnev); FileManager.CsvReader(fbe, etm); Kék: új kódrészek fdb.settext(""+etm.getrowcount());

49 Lista panel kialakítás a panel kipróbálása Ha mindent jól csináltunk, a program betölti és megjeleníti a csv fájlok tartalmát: /49

50 Lista panel kialakítás a panel létrehozása 110/50

51 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki az Új dolgozó felvitele panelt - A panel a Beszúr gomb megnyomásakor ellenőrizze az adatokat - Az adatok a Beszúr hatására adódjanak hozzá a táblázathoz, melyben tároljuk azokat. 110/51

52 Új dolgozó panel New \ Swing \ JDialog Vegyük ki a pipát! 110/52

53 Új dolgozó panel 1. Absolute layout beállítása 2. Háttérszín beállítása: Named colors\lightness\paleturquoise 3. 1 felirat (Kód:) és 1 szövegmező felpakolása 1. A JTextField változónevének megadása: kod 4. Felirat + szövegmező kijelölése, másolása, 110/53 beillesztése Ctrl + V 6. Felirat átírása, a szövegmező változónevének beállítása (nev) ismétlése (változók: szid, lak, iq) 8. Nyomógombok felpakolása (másolással) 9. Kód mező ne legyen szerkeszthető: 10. Ablak felirata: Ctrl 11. Futassuk a kódot, nézzük meg az eredményt! Ctrl + C

54 Új dolgozó panel Programlogika: 1. Legyen ez az ablak is modális. 2. A Lekér gomb jelenítse meg a rekord kódját. A legnagyobb létező kódot (maxkod) az EmpProgramtól kapja meg, ettől legyen eggyel nagyobb a rekord kódja. 3. A Beszúr gomb megnyomásakor a program ellenőrizze le: ki vannak-e töltve a mezők, (filled), a születési idő dátum-e, (gooddate) az iq mezőben egész szám van-e (goodint)! ezek a metódusok a DataManager osztályba kerüljenek! 4. Ha megfelelőek az adatok a mezőkben, a Beszúr gomb megnyomásakor állítson elő a panel egy Emp típusú változót, ez egy metódussal (getemp) lekérhető legyen a paneltől, és a panel lekérdezhető visszatérő (getkilep) értéke legyen 1, míg sima bezáráskor a visszatérő érték legyen /54

55 Új dolgozó panel Kódok beszúrása: A konstruktorba: Lehet, hogy kell: public EmpNew(JFrame f, int maxkod) { super(f, true); settitle("\u00daj dolgoz\u00f3 felvitele"); import javax.swing.jframe; Lekér gombhoz: btnlekr.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { kod.settext(""+(maxkod+1)); ); 110/55

56 A DataManager osztály bővítése Kódok beszúrása: Új metódusok a DataManager osztályba: public String RF(JTextField a) { return a.gettext().tostring(); String beolvasása szövegmezőből public boolean filled(jtextfield a) { Van adat a mezőben? String s = RF(a); if (s.length() > 0) return true; else return false; public boolean gooddate(jtextfield a) { Helyes a dátum? String s = RF(a); Date testdate = null; try { sdf: yyyy.mm.dd alakú dátumforma testdate = sdf.parse(s); catch (ParseException e){return false; if (sdf.format(testdate).equals(s)) return true; else return false; 110/56

57 A DataManager osztály bővítése Kódok beszúrása: Új metódusok a DataManager osztályba: public boolean goodint(jtextfield a) { Helyes az egész szám? String s = RF(a); try { Integer.parseInt(s); return true; catch (NumberFormatException e){return false; Szükséges importok: import java.util.date; import java.text.simpledateformat; import java.text.parseexception; Szükséges deklaráció: private SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); 110/57

58 Új dolgozó panel: EmpNew Szükséges deklaráció: private DataManager DM = new DataManager(); A Beszúr gomb kódja: btnbeszr.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { if (!DM.filled(kod)) kod.settext(""+(maxkod+1)); if (!DM.filled(nev)) DM.SMD("A Név mező üres!", 0); else if (!DM.filled(szid)) DM.SMD("A Születési idő mező üres!", 0); else if (!DM.goodDate(szid)) DM.SMD("A Születési idő mezőben hibás adat van!", 0); else if (!DM.filled(lak)) DM.SMD("A Lakóhely mező üres!", 0); else if (!DM.filled(iq)) DM.SMD("Az IQ mező üres!", 0); else if (!DM.goodInt(iq)) DM.SMD("Az IQ mezőben hibás adat van!",0); ); 110/58

59 Új dolgozó panel Kipróbálás: a main függvényben ideiglenesen javítsuk ki a példányosítás kódját EmpNew dialog = new EmpNew(null, 52); 110/59

60 A DataManager osztály bővítése Ha minden adat rendben, állítsunk elő egy Emp típusú változót az adatokból. Ehhez készítenünk kell egy Emp típust, és két újabb metódus is szükséges a DataManager osztályba: public Date StoD(String s){ Date testdate = null, vid = null; Stringből dátum try { testdate = sdf.parse(s); catch (ParseException e) {return vid; if (!sdf.format(testdate).equals(s)){return vid; return testdate; public int StoI(String s){ int x=-55; x = Integer.parseInt(s); return x; 110/60 Stringből Integer

61 Az Emp típus elkészítése File \ New \ Class A típus.dat fájlba írásához szükséges, hogy sorosítható legyen! x 2 110/61 6 5

62 Az Emp típus kódja import java.io.serializable; public class Emp implements Serializable { private int kod; private String nev; private Date szulido; private String lakohely; private int iq; A Date típusra hibát kapunk. Megoldás: jobbklikk a Date-re \ Source \ Add import. A panelen válasszuk a java.util.date-et. 110/62

63 Az Emp típus kódja Konstruktor létrehozása A konstruktor létrehozása: Jobbklikk az üres háttérre \ Source \ Generate Constructor using fields 110/63

64 Az Emp típus kódja Getter metódusok hozzáadása: Jobbklikk az adattagok területére \ Source \ Generate Getters and Setters 110/64

65 Az Emp típus teljes kódja import java.io.serializable; import java.util.date; 2/1 public class Emp implements Serializable { private int kod; private String nev; private Date szulido; private String lakohely; private int iq; Adattagok public Emp(int kod, String nev, Date szulido, String lakohely, int iq){ this.kod = kod; this.nev = nev; this.szulido = szulido; this.lakohely = lakohely; Konstruktor this.iq = iq; 110/65

66 Az Emp típus kódja public int getkod(){ return kod; public String getnev(){ return nev; public Date getszulido(){ return szulido; public String getlakohely(){ return lakohely; public int getiq(){ return iq; Getter metódusok 2/2 110/66

67 Új dolgozó panel: EmpNew A Beszúr gomb kódjának folytatása: private Emp adat; private int kilep=0; btnbeszr.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) {... else if (!DM.filled(iq)) DM.SMD("Az IQ mező üres!", 0); else if (!DM.goodInt(iq)) DM.SMD("Az IQ mezőben hibás adat van!", 0); else { adat = new Emp(DM.StoI(DM.RF(kod)), DM.RF(nev) DM.StoD(DM.RF(szid)), DM.RF(lak), DM.StoI(DM.RF(iq))); DM.SMD("Adat beszúrva!", 1); kilep=1; dispose(); setvisible(false); ); 110/67

68 Új dolgozó panel: EmpNew Már csak két metódus szükséges, amikkel ki tudjuk olvasni a panel adatait (az osztály végére kerüljenek) public Emp getemp(){ return adat; public int KiLep() { return kilep; A panel Bezár gombjának kódja: btnbezr.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { dispose(); ); 110/68

69 Új dolgozó panel Töröljük ki a main függvényt a kódból: 110/69

70 Az Új dolgozó panel beépítése Programlogika- az Új dolgozó panel beépítése: 1. Az EmpProgram ablakban hozzunk létre egy Új adat nyomógombot 2. A gombot megnyomva jelenjen meg a panel, ekkor adjuk át a panelnek a legutolsó rekord kódját. Ha nincs egyetlen adat sem, a kód induljon 21-ről! (mert csak!) 3. Ha a bezárás ikonnal, vagy a Bezár gombbal bezárjuk a panelt, ne történjen semmi sem 4. Ha a Beszúr gombot megnyomjuk a panelen, akkor olvassuk ki a panelről az új adatsort, és adjuk hozzá az adatokat nyilvántartó táblázathoz Növeljük az adatsorok számát! 110/70

71 Az EmpProgram panel módosítása Másoljuk le a Lista gombot, módosítsuk az adatait: Írjuk át a változó nevét: ujadat-ra Írjuk át a feliratát: Új adat-ra Kattintsunk rá duplán (akciókezelő hozzáadása), és adjuk meg a működését Ctrl Ctrl + + C V 110/71

72 Az EmpProgram módosítása A dátum kezeléséhez szükség lesz a Date osztályra, a formázásához a SimpleDateFormat osztályra: import java.util.date; import java.text.simpledateformat; A magyar dátumforma kezeléséhez szükség lesz egy dátumformátum változóra: private SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); 110/72

73 Az EmpProgram módosítása ujadat.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { ); 110/73 int kodv=0; if (etm.getrowcount()==0) kodv=20; else kodv=(int)etm.getvalueat(etm.getrowcount()-1, 1); EmpNew en = new EmpNew(EmpProgram.this, kodv); en.setvisible(true); int kilep = en.kilep(); if (kilep==1) { Emp newemp = en.getemp(); Adat kiolvasása az Új adat panelről Date d = newemp.getszulido(); String ddd = sdf.format(d).tostring(); etm.addrow(new Object[]{new Boolean(false), newemp.getkod(), newemp.getnev(), ddd, newemp.getlakohely(), newemp.getiq()); fdb.settext(""+etm.getrowcount()); Ha nincs adat, a kód értéke legyen 20, egyébként a táblázatban lévő utolsó adatsorban lévő kód értéke. tm.getvalueat(row, column)

74 Az Új adat funkció kipróbálása /74 7

75 Lista panel kialakítás a panel létrehozása 110/75

76 A feladat Feladat: folytassuk a panel életre keltését! - Készítsük el az adatok kiírási funkcióját: - Először a Célt kell kiválasztani, - aztán megadni a kimeneti fájl nevét, - végül megnyomni a Kiírás gombot. - >>> Forrás: extra funkció, visszaírás oda, ahonnan betöltöttük az adatokat 110/76

77 Az EmpProgram panel módosítása Másolással készítsük el a gombokat: Módosítás Törlés Kiírás Variable modosit torol kiir Text Módosítás Törlés Kiírás Készítsük el a Cél: feliratot Másolással készítsük el a legördíthető listát, Var: jcbc Másolással készítsük el a szövegmezőt, Var: kifnev Adjunk hozzá eseménykezelőt a jcbc nevű legördíthető listához: 1. Jobb klikk a JComboBox-ra 2. Add event handler \ action \ actionperformed 110/77

78 Az EmpProgram kódjának módosítása A célterület kezeléséhez szükség lesz egy változóra, ebben lesz mindig a kiválasztott cél értéke: private String cel="válasszon!"; A legördülő lista (jcbc) kódja: String elem2[] = {"Válasszon!",">>> Forrás","Helyi.dat fájl", "Helyi.xml fájl","helyi.csv fájl","helyi.json fájl", "Helyi.pdf fájl","sqlite DB"; JComboBox jcbc = new JComboBox(); for (String s: elem2) jcbc.additem(s); jcbc.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { cel = (String)jcbc.getSelectedItem(); ); 110/78

79 Az EmpProgram kódjának módosítása A Dizájn felületen kattintsunk duplán a Kiírás gombra A kódot egészítsük ki: JButton kiir = new JButton("Ki\u00EDr\u00E1s"); kiir.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (cel.equals("válasszon!")) DM.SMD("Először válassza ki a Cél-t!", 0); else if (etm.getrowcount()==0) DM.SMD("Nincs kiírható adat", 0); else if (cel.equals("helyi.csv fájl")) { if (kifnev.gettext().length()==0) DM.SMD("Nincs megadva a cél fájl neve!", 0); else { FM.CsvWriter(kifnev.getText().toString(), etm); ); 110/79

80 Adatok kiírása csv fájlba Programlogika: 1. A rutin megkapja a kiírandó fájl nevét, és az adatokat tartalmazó táblamodell nevét 1. Kiírja a mezők nevét 2. Két egymásba ágyazott ciklussal végigmegy az adatokon, és kiírja őket a fájlba j etm.getcolumncount() i 110/80 etm.getrowcount()

81 Adatok kiírása csv fájlba (FileManager bővítése) public void CsvWriter(String fnev, EmpTM etm) { try { PrintStream out = new PrintStream(new FileOutputStream(fnev)); out.println("kód;név;szülidő;lakóhely;iq"); int rdb = etm.getrowcount(); int cdb = etm.getcolumncount(); for (int i=0; i < rdb; i++) { for (int j=1; j < cdb-1; j++) { out.print(""+etm.getvalueat(i,j)+";"); out.println(""+etm.getvalueat(i, cdb-1)); out.close(); DM.SMD("Adatok kiírva!", 1); catch (IOException ioe) { DM.SMD("CsvWriter: "+ioe.getmessage(), 0); 110/81

82 A Kiírás funkció kipróbálása /82

83 A kiírt adat visszaolvasása 3 C:\Users\bitman\workspace\EmpOrai\prb.csv /83

84 A Cél: >>> Forrás funkció (visszaírás a forrásba) Programlogika: 1. Ha kiválasztjuk ezt az opciót, és nincs kiválasztva Forrás, dobjunk hibaüzenetet! 2. Ha kiválasztjuk ezt az opciót, és van kiválasztva Forrás, írjuk ki a forrás nevét a Cél: mezőbe! 3. Ha megnyomjuk a Kiírás gombot, és ez az opció ki van választva, be kell azonosítani a Forrás típusát, nevét, és ennek megfelelően kell kiírni az adatokat! A legördülő lista (jcbc) kódjának módosítása: jcbc.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { cel = (String)jcbc.getSelectedItem(); if (cel.equals(">>> Forrás") && fnev.gettext().equals("")) DM.SMD("Nincs megadva a Forrás!"); if (cel.equals(">>> Forrás") &&!fnev.gettext().equals("")) kifnev.settext(fnev.gettext()); ); 110/84

85 A Cél: >>> Forrás funkció (visszaírás a forrásba) A kiir gomb kódjának módosítása: JButton kiir = new JButton("Ki\u00EDr\u00E1s"); kiir.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (cel.equals("válasszon!")) SMD("Először válassza ki a Cél-t!"); else if (etm.getrowcount()==0) SMD("Nincs kiírható adat"); else if (cel.equals("helyi.csv fájl")) { if (kifnev.gettext().length()==0) SMD("Nincs megadva a cél fájl neve!"); else { FileManager.CsvWriter(kifnev.getText().toString(), etm); else if (cel.equals(">>> Forrás") && forras.equals("helyi.csv fájl")){ String kiirfnev = fnev.gettext(); kifnev.settext(kiirfnev); FM.CsvWriter(kiirfnev, etm); ); 110/85

86 Lista panel kialakítás a panel létrehozása 110/86

87 A feladat Feladat: folytassuk az EmpProgram panel életre keltését! - Készítsük el a Módosítás funkciót - A Lista panelt másoljuk le, és bővítsük a szükséges mezőkkel - A Módosít gomb megnyomásakor az adott mezőkbe írt adatok módosuljanak a kijelölt rekordban 110/87

88 Az EmpList panel lemásolása Álljunk rá a projektünkben az EmpList osztály nevére, és másoljuk le az osztályt. Ctrl + C Ctrl + V A megjelenő panelen adjuk meg az új osztály nevét: EmpMod 110/88

89 Az EmpMod ideiglenes átalakítása Az EmpMod panel nem futtatható, így nagyon nehéz a grafikus felületen módosításokat végezni, ezért ideiglenesen alakítsuk át futtathatóra: Az EmpProgramból másoljuk át a main függvényt, és alakítsuk át, hogy ezt a panelt indítsa! A paraméterként bejövő táblamodellt szüntessük meg, és helyette példányosítsuk a panelen az etm táblamodellt (a kódot az EmpProgramból másoljuk át!) Ha kész a grafikus átalakítás, ezeket a módosításokat vissza kell majd állítani! 110/89

90 Az EmpMod ideiglenes átalakítása private EmpTM etm; public static void main(string[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { EmpMod frame = new EmpMod(null); frame.setvisible(true); catch (Exception e) { e.printstacktrace(); ); Ideiglenes main függvény, benne az átalakított EmpMod példányosítás Kommentben az eredeti adatok, így könnyebb lesz visszaállítani őket! public EmpMod(JFrame f) { //==,EmpTm betm super(f, "Dolgozók módosítása", true); //== etm = betm; Object emptmn[] = {"Jel","Kód","Név","Szülidő","Lakóhely","IQ"; etm = new EmpTM(emptmn, 0); Ideiglenes etm példány, setbounds(100, 100, 500, 300); az EmpProgramból! 110/90

91 Próba - Feladat - Készítsük el a megjelölt módosításokat! 110/91

92 Az EmpMod panel grafikus átalakítása Ha nem jelenne meg a Design fül, akkor zárjuk be a panel kódját, és nyissuk meg a következő módon: 1. Jobb klikk az osztály nevére, a Package Explorerben 2. Open With 3. WindowBuilder Editor /92

93 Az EmpMod panel grafikus átalakítása Vegyük kisebbre (alacsonyabbra) a táblázatot Vegyük észre: a kód mező nem változtatható! Rakjunk fel egy szövegmezőt (JTextField) Másoljuk le a szövegmezőt, közben állítsuk be a megfelelő szélességeket! (Ciklusban: módosítok, megnézem) Állítsuk be a szövegmezők neveit: nev, szid, lakh, iq Másolással készítsük el a Módosít gombot, Var: modosit 1. változat Kész a panel 110/93

94 Magyarázatok Programlogika: 1. Az adatokat csak a megkapott táblamodellben módosítjuk, a végleges (perzisztens) tároláshoz később ki kell írni őket fájlba! 2. Csak egy adatsor, de annak akár az összes adata módosítható egyszerre, ebből következnek a Módosítás gomb megnyomásakor lezajló ellenőrzések. Hiba keletkezik, ha: 1. Ha nincs kitöltve egyetlen módosítandó adat sem, 2. Ha a Születési időben hibás dátum van, 3. Ha hibás szám van az IQ mezőben, 4. Ha nincs kijelölve módosítandó rekord 5. Ha több rekord van kijelölve módosításra 3. A szükséges metódusok megtalálhatók a DataManager osztályban 4. Szükségünk lesz egy szövegmezőt kiürítő metódusra, ezt írjuk meg a DataManager osztályban: 110/94 public void DF(JTextField a) { a.settext("");

95 Az EmpMod panel Módosítás gombjának kódja A grafikus dizájnerben kattintsunk duplán a Módosít gombra, így hozzáadunk egy eseménykezelőt, és visszajutunk a kódba. Kezdjük a kód kiegészítését. Készítsük el a Módosít gomb kódját: JButton modosit = new JButton("M\u00F3dos\u00EDt"); 2/1 modosit.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { if (!DM.filled(nev) &&!DM.filled(szid) &&!DM.filled(lakh) &&!DM.filled(iq)) DM.SMD("Egyetlen módosító adat sincs beírva!",0); else if (DM.filled(szid) &&!DM.goodDate(szid)) DM.SMD("A Születési idő mezőben hibás adat van!",0); else if (DM.filled(iq) &&!DM.goodInt(iq)) DM.SMD("Az IQ mezőben hibás adat van!",0); else { 110/95

96 ); Az EmpMod panel Módosítás gombjának kódja int db=0, jel=0, x=0; 2/2 for(x = 0; x < etm.getrowcount(); x++) if ((Boolean)etm.getValueAt(x,0)) {db++; jel=x; if (db==0) DM.SMD("Nincs kijelölve a módosítandó rekord!",0); if (db>1) DM.SMD("Több rekord van kijelölve!\negyszerre csak egy rekord módosítható!",0); if (db==1) { if (DM.filled(nev)) etm.setvalueat(dm.rf(nev), jel, 2); if (DM.filled(szid)) etm.setvalueat(dm.rf(szid), jel, 3); if (DM.filled(lakh)) etm.setvalueat(dm.rf(lakh), jel, 4); if (DM.filled(iq)) etm.setvalueat(dm.rf(iq), jel, 5); DM.SMD("A rekord módosítva!",1); DM.DF(nev); DM.DF(szid); DM.DF(lakh); DM.DF(iq); etm.setvalueat(false, jel, 0); //== előző oldali else ág vége 110/96

97 Az EmpMod panel visszaalakítása Töröljük ki a main függvényt! Állítsuk vissza az ideiglenesen módosított sorokat! A main függvény hűlt helye public EmpMod(JFrame f, EmpTM betm) { A helyreállított konstruktor super(f, "Dolgozók módosítása", true); etm = betm; A visszaállított értékadás //Object emptmn[] = {"Jel","Kód","Név","Szülidő","Lakóhely","IQ"; //etm = new EmpTM(emptmn, 0); setbounds(100, 100, 500, 300); Töröljük a kódból az ideiglenes emp példányt! 110/97

98 Az EmpMod meghívása az EmpProgramból A Módosítás gomb kódja: JButton modosit = new JButton("M\u00F3dos\u00EDt\u00E1s"); modosit.addactionlistener(new ActionListener() { public void actionperformed(actionevent e) { if (etm.getrowcount()==0) DM.SMD("Nincs módosítható adat!", 0); else { EmpMod em = new EmpMod(EmpProgram.this, etm); em.setvisible(true); ); 110/98

99 A Módosítás funkció kipróbálása /99 8 6

100 Lista panel kialakítás a panel létrehozása 110/100

101 A feladat Feladat: folytassuk az EmpProgram panel életre keltését! - Készítsük el a Törlés funkciót - Egyszerre csak egy rekord törölhető, extra funkcióként ez átállítható - A Lista panelt másoljuk le, és azt alakítsuk át a szükséges módon 110/101

102 Az EmpList panel lemásolása Álljunk rá a projektünkben az EmpList osztály nevére, és másoljuk le az osztályt. Ctrl + C Ctrl + V A megjelenő panelen adjuk meg az új osztály nevét: EmpDel 110/102

103 Az EmpDel panel kialakítása Nyissuk meg a panelt a WindowBuilder Editor-ral! 110/103

104 Az EmpDel panel kialakítása (Design) Írjuk át a panel nevét, title: Dolgozók törlése Vegyük alacsonyabbra a táblázatot Rakjunk egy JCheckBox-ot a panelre Variable: jcb text: Több rekord is törölhető egyszerre Adjunk a jcb-hez akciókezelőt: \ Add event handler \ action \ actionperformed Váltsunk vissza Design nézetre, másoljuk le a Bezár gombot, írjuk át a feliratát, rakjuk a megfelelő helyre! Var: torol, text: Töröl Kattintsunk a Töröl gombra duplán (akciókezelő hozzáadása) Kész a panel, jöhet a kód módosítása 110/104

105 Magyarázatok Programlogika: 1. Szükségünk lesz egy változóra, ami a többes törlés funkció állapotát mutatja (md) 2. A kilépés kezelésével nem kell foglalkoznunk, mert ezen a panelen fogjuk kitörölni a táblázatból az adatokat, és mivel a panel konstruktorában szerepel az etm = betm; utasítás (a főprogramból paraméterként érkező betm, és a panelen használt etm megegyezik, vagyis a két táblamodell ugyanarra a változóra mutat), a főprogramban automatikusan módosulnak az adatok! 110/105

106 Az EmpDel panel kialakítása kód: A többes törlés változójának deklarálása: private boolean md=false; A DataManager példány megadása: private DataManager DM = new DataManager(); A többes törlés JCheckBox (jcb) kódja: jcb.addactionlistener(new ActionListener() { public void actionperformed(actionevent arg0) { md = jcb.isselected(); ); 110/106

107 Az EmpDel panel kialakítása kód: A Törlés (torol) gomb kódja: int db=0, jel=0, x=0; for(x = 0; x < etm.getrowcount(); x++) if ((Boolean)etm.getValueAt(x,0)) {db++; jel=x; if (db==0) DM.SMD("Nincs kijelölve a törlendő rekord!",0); if (!md) { if (db>1) DM.SMD("Több rekord van kijelölve!\negyszerre csak egy rekord törölhető!",0); if (db==1) { etm.removerow(jel); DM.SMD("A rekord törölve!",1); else { for (int i=0; i<etm.getrowcount(); i++) if ((Boolean)etm.getValueAt(i,0)) {etm.removerow(i); i--; DM.SMD("Rekord(ok) törölve!",1); 110/107

108 Az EmpDel panel beépítése az EmpProgramba Az EmpProgram-ban lévő Törlés (torol) gomb kódja: if (etm.getrowcount()==0) DM.SMD("Nincs törölhető adat!", 0); else { EmpDel ed = new EmpDel(EmpProgram.this, etm); ed.setvisible(true); fdb.settext(""+etm.getrowcount()); Kész! Próbálja ki mindenki az alkotást! 110/108

109 Lista panel kialakítás a panel létrehozása 110/109

110 VÉGE VÉGE 110/110

Java Programozás 6. Gy: Java alapok. Adatkezelő 2.rész

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

Részletesebben

Java Programozás 7. Gy: Java alapok. Adatkezelő 3.rész

Java Programozás 7. Gy: Java alapok. Adatkezelő 3.rész Java Programozás 7. Gy: Java alapok Adatkezelő 3.rész 39/1 B ITv: MAN 2018.04.11 A feladat Feladat: folytassuk a panel életre keltését! - Alakítsuk ki az Új dolgozó felvitele panelt - A panel a Beszúr

Részletesebben

Java Programozás 5. Gy: Java alapok. Adatkezelő 1.rész

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

Részletesebben

Java Programozás 8. Gy: Java alapok. Adatkezelő 4.rész

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,

Részletesebben

Java Programozás 9. Gy: Java alapok. Adatkezelő 5.rész

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

Részletesebben

Java Programozás 11. Ea: MVC modell

Java Programozás 11. Ea: MVC modell Java Programozás 11. Ea: MVC modell 20/1 B ITv: MAN 2018.03.02 MVC Model-View-Controller A modell-nézet-vezérlő a szoftvertervezésben használatos szerkezeti minta. Az MVC célja elválasztani az üzleti logikát

Részletesebben

Java Programozás 3. Gy: Java GUI. Swing, AWT

Java Programozás 3. Gy: Java GUI. Swing, AWT Java Programozás 3. Gy: Java GUI Swing, AWT 35/1 B ITv: MAN 2018.02.25 Feladat Készítsük el az Emp osztály kezelő programját úgy, hogy ArrayList-et (listatömb, tömblista, rugalmas tömb) használunk. A java.util.arraylist

Részletesebben

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor

Java Programozás 4. Gy: Java GUI. Tipper, MVC kalkulátor Java Programozás 4. Gy: Java GUI Tipper, MVC kalkulátor 15/1 B ITv: MAN 2018.03.10 1. Feladat: Tipper Készítsük el a tippelős programunk grafikus változatát. Az üzleti logika kódja megvan, a felület pedig

Részletesebben

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,

Részletesebben

Grafikus felhasználói felületek. Dr. Szendrei Rudolf Informatikai Kar Eötvös Loránd Tudományegyetem. Programozási technológia I. Dr.

Grafikus felhasználói felületek. Dr. Szendrei Rudolf Informatikai Kar Eötvös Loránd Tudományegyetem. Programozási technológia I. Dr. Programozási Grafikus Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni awt: heavy weight" komponensek swing:

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Grafikus felhasználói felület Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni awt,,heavy weight"

Részletesebben

Programozási technológia

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

Részletesebben

Swing GUI készítése NetBeans IDE segítségével

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

Részletesebben

Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később).

Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később). Grafikus felhasználói felület Két csomag elemeiből lehet a felületet elkészíteni: awt: heavy weight komponensek; swing: light weight komponensek (időben később). Mi hogyan használjuk? awt: eseménykezelés,

Részletesebben

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 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\

Részletesebben

Java Programozás 10. Ea: JDBC. SQLite alapokon

Java Programozás 10. Ea: JDBC. SQLite alapokon Java Programozás 10. Ea: JDBC SQLite alapokon 104/1 B ITv: MAN 2019.04.04 SQLite Az SQLite önálló, fájl alapú, kisméretű, C forrású programkönyvtárként megvalósított ACID-kompatibilis relációs adatbázis-kezelő

Részletesebben

Java Programozás 1. Gy: Java alapok. Ismétlés ++

Java Programozás 1. Gy: Java alapok. Ismétlés ++ Java Programozás 1. Gy: Java alapok Ismétlés ++ 24/1 B ITv: MAN 2018.02.18 Feladat Készítsünk egy komplett konzolos alkalmazást, mely generál egy számot 0 és 100 között (mindkét határt beleértve), feladatunk

Részletesebben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben Java GUI készítése, Oracle kapcsolódás JDBC-vel A jelen anyagban egy egyszerűsített megközelítéssel vizsgáljuk

Részletesebben

OOP: Java 8.Gy: Gyakorlás

OOP: Java 8.Gy: Gyakorlás OOP: Java 8.Gy: Gyakorlás 43/1 B ITv: MAN 2019.04.10 43/2 Egy régebbi beszámoló anyaga 1. Feladat: Készítsen egy Szemely nevű osztályt a szokásos konvenciók betartásával, amely tárolja egy ember nevét

Részletesebben

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.

Részletesebben

OOP: Java 8.Gy: Abstract osztályok, interfészek

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

Részletesebben

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 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ó

Részletesebben

A Java nyelv. Dialógus ablakok. Elek Tibor

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,

Részletesebben

Entity Framework alapú adatbáziselérés

Entity Framework alapú adatbáziselérés Entity Framework alapú adatbáziselérés Dr. Johanyák Zsolt Csaba http://johanyak.hu A gyakorlat célja Model-first megközelítéssel Entity-Framework modell létrehozása, majd ebből adatbázis generálása LocalDB-ben.

Részletesebben

Tájékoztató. Használható segédeszköz: -

Tájékoztató. Használható segédeszköz: - A 12/2013. (III. 29.) NFM rendelet szakmai és vizsgakövetelménye alapján. Szakképesítés, azonosítószáma és megnevezése 54 481 06 Informatikai rendszerüzemeltető Tájékoztató A vizsgázó az első lapra írja

Részletesebben

Hozzunk létre két rekordot a táblában, majd véglegesítsünk (commit):

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

Részletesebben

A gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.

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

Részletesebben

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.

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

Részletesebben

munkafüzet open eseményéhez

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

Részletesebben

Műveletek makrókkal. Makró futtatása párbeszédpanelről. A Színezés makró futtatása a Makró párbeszédpanelről

Műveletek makrókkal. Makró futtatása párbeszédpanelről. A Színezés makró futtatása a Makró párbeszédpanelről Műveletek makrókkal A munkafüzettel együtt tárolt, minden munkalapon elérhető makrót a Fejlesztőeszközök szalag Makrók párbeszédpanelje segítségével nyithatjuk meg, innen végezhetjük el a makrókkal megoldandó

Részletesebben

ReszlAd fájl, kitöltési útmutató:

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

Részletesebben

Gyorsított jegybeírás. Felhasználói dokumentáció verzió 2.0.

Gyorsított jegybeírás. Felhasználói dokumentáció verzió 2.0. Gyorsított jegybeírás Felhasználói dokumentáció verzió 2.0. Budapest, 2006 Változáskezelés Verzió Dátum Változás Pont Cím Oldal Kiadás: 2006.02.17. Verzió: 2.0. Oldalszám: 2 / 19 Tartalomjegyzék 1. Bevezetés...

Részletesebben

M-Fájlok létrehozása MATLAB-ban

M-Fájlok létrehozása MATLAB-ban M-Fájlok létrehozása MATLAB-ban 1 Mi az M-fájl Annak ellenére, hogy a MATLAB rendkívül kifinomult és fejlett számológépként használható, igazi nagysága mégis abban rejlik, hogy be tud olvasni és végrehajtani

Részletesebben

Duál Reklám weboldal Adminisztrátor kézikönyv

Duál Reklám weboldal Adminisztrátor kézikönyv Duál Reklám weboldal Adminisztrátor kézikönyv Dokumentum Verzió: 1.0 Készítette: SysWork Szoftverház Kft. 1. oldal Felület elérése Az adminisztrációs felület belépés után érhető el. Belépés után automatikusan

Részletesebben

Java gyakorlat feladatai e s megolda sai (2014.04.10)

Java gyakorlat feladatai e s megolda sai (2014.04.10) Java gyakorlat feladatai e s megolda sai (2014.04.10) 1. Feladat Számítsuk ki a Fibonacci sorozat első 20 tagját! / Fibonacci számsorozat tagjait kiszámoló, egyetlen osztályból álló program @author Bence

Részletesebben

A feladatok megoldásához felhasználandó osztályok leírásait az alábbi URL-en találja meg: http://download.oracle.com/javase/6/docs/api/

A feladatok megoldásához felhasználandó osztályok leírásait az alábbi URL-en találja meg: http://download.oracle.com/javase/6/docs/api/ Java Swing MVC labor Készítette: Budai Péter, BME IIT, 2012. A feladatok megoldásához felhasználandó osztályok leírásait az alábbi URL-en találja meg: http://download.oracle.com/javase/6/docs/api/ Továbbá

Részletesebben

Táblázatok. Táblázatok beszúrása. Cellák kijelölése

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,

Részletesebben

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport 10-es Keressünk egy egész számokat tartalmazó négyzetes mátrixban olyan oszlopot, ahol a főátló alatti elemek mind nullák! Megolda si terv: Specifika cio : A = (mat: Z n m,ind: N, l: L) Ef =(mat = mat`)

Részletesebben

Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba

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

Részletesebben

Az importálás folyamata Felhasználói dokumentáció verzió 2.1.

Az importálás folyamata Felhasználói dokumentáció verzió 2.1. Az importálás folyamata Felhasználói dokumentáció verzió 2.1. Budapest, 2008. Változáskezelés Verzió Dátum Változás Pont Cím Oldal 2.1. 2008.01.17. A teljes dokumentáció megváltozott Kiadás: 2008.01.17.

Részletesebben

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. 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

Részletesebben

Lapműveletek. Indítsuk el az Excel programot és töröljük ki a Munka1 nevű munkalapot!

Lapműveletek. Indítsuk el az Excel programot és töröljük ki a Munka1 nevű munkalapot! Bevezetés Ebben a fejezetben megismerkedünk az Excel munkalapjainak beszúrásával, törlésével, másolásával, valamint áthelyezésével, illetve csoportos kezelésével. Képesek leszünk különböző munkafüzetek

Részletesebben

Szoftvertechnológia alapjai Java előadások

Szoftvertechnológia alapjai Java előadások Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html 1 Kivételkezelés I. szokatlan, váratlan

Részletesebben

Johanyák Zsolt Csaba: Képnézegető program oktatási segédlet

Johanyák Zsolt Csaba: Képnézegető program oktatási segédlet 1. Képnézegető program Készítsünk egy egyszerű képnézegető programot JPG képekhez. Az ablak függőlegesen két részre legyen osztva. Baloldalon egy listaablak jelenjen meg, amiben a fájlok nevei láthatók.

Részletesebben

Java felhasználói felület

Java felhasználói felület Java felhasználói felület Alapfogalmak Komponens alapok Elek Tibor GUI-val kapcsolatos fogalmak Eseményvezérelt program Program futás: - induló állapot (induló UI) megjelenítése, - eseménykezelő végtelen

Részletesebben

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 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:

Részletesebben

Java programozási nyelv 6. rész Java a gyakorlatban

Java programozási nyelv 6. rész Java a gyakorlatban Java programozási nyelv 6. rész Java a gyakorlatban Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. október A Java programozási nyelv Soós Sándor 1/16 Tartalomjegyzék

Részletesebben

3. Osztályok II. Programozás II

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

Részletesebben

Informatika terméktervezőknek

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

Részletesebben

Torna. A torna.csv UTF-8 kódolású állományban soronként egy versenyző eredményeit tároljuk. Az adatokat pontosvessző választja el egymástól.

Torna. A torna.csv UTF-8 kódolású állományban soronként egy versenyző eredményeit tároljuk. Az adatokat pontosvessző választja el egymástól. Torna A pekingi olimpián tornából hat versenyszámban mérettetik meg magukat a versenyzők. Ennek a versenynek az eredményeit kell feldolgoznia ebben a feladatban. A megoldás során vegye figyelembe a következőket:

Részletesebben

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java

Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges. Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Függvények, csomagok Csomagok Az osztályok csomagokba vannak rendezve, minden csomag tetszőleges számú osztályt tartalmazhat Pl.: java.util.scanner Könyvtárhierarhiát fed: Pl.: java/util/scanner.java Célja:

Részletesebben

Lekérdezések I. Egyszerű választó lekérdezések

Lekérdezések I. Egyszerű választó lekérdezések Lekérdezés létrehozása: A Varázslóval: Lekérdezések I. Egyszerű választó lekérdezések 1. Lekérdezés sáv Lekérdezés varázsló 2. Tábla (vagy lekérdezés) kiválasztása. 3. Szükséges mezők átvitele a kijelölt

Részletesebben

OOP: Java 4.Gy: Java osztályok

OOP: Java 4.Gy: Java osztályok OOP: Java 4.Gy: Java osztályok. 36/1 B ITv: MAN 2019.03.02 Feladat Készítsen el egy Employee osztályt és egy Employee osztályt használó osztályt (EmpProgram). Az Employee osztálynak: van name és salary

Részletesebben

4. Gy: JAVA osztályok

4. Gy: JAVA osztályok Objektum Orientált Programozás 4. Gy: JAVA osztályok 25/1B IT MAN B IT v: 2016.02.24 MAN Feladatok 1. Készítsen egy Teglalap osztályt - legyen adattagja a két oldal tárolására (egészek) - legyen konstruktora,

Részletesebben

VARIO Face 2.0 Felhasználói kézikönyv

VARIO Face 2.0 Felhasználói kézikönyv VARIO Face 2.0 Felhasználói kézikönyv A kézikönyv használata Mielőtt elindítaná és használná a szoftvert kérjük olvassa el figyelmesen a felhasználói kézikönyvet! A dokumentum nem sokszorosítható illetve

Részletesebben

ONLINE SZAKÉRTŐI KERETRENDSZER

ONLINE SZAKÉRTŐI KERETRENDSZER FELHASZNÁLÓI SEGÉDLET 1. ÁBRA 1.Lépés Szakértői rendszer főbb paramétereinek megadása 0. Ellenőrzés bekapcsolása (Ha első alkalommal használja a rendszert ajánlott kipipálni). A rendszer a megadott paramétereket

Részletesebben

Kifizetések kezelése. 1 Kifizetési dátumok megadása pénzügyi kódokhoz

Kifizetések kezelése. 1 Kifizetési dátumok megadása pénzügyi kódokhoz Kifizetések kezelése 1 Kifizetési dátumok megadása pénzügyi kódokhoz 1.1 Pénzügyi kódok menüponttól indulva Pénzügyek (kék menüpont, csak lenyitni + jelnél)(78600)/kifizetési jogcímek (jogcím kiválasztása)

Részletesebben

Dokumentum létrehozása/módosítása a portálon:

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,

Részletesebben

Táblázatos adatok használata

Táblázatos adatok használata Táblázatos adatok használata Tartalomjegyzék 1. Az adatok rendezése...2 2. Keresés a táblázatban...2 3. A megjelenő oszlopok kiválasztása...3 4. Az oszlopok sorrendjének meghatározása...4 5. Az oszlopok

Részletesebben

Access gyakorlati feladatok lépésről lépésre

Access gyakorlati feladatok lépésről lépésre Access gyakorlati feladatok lépésről lépésre 1. feladat: Hajómenetrend A balatoni hajómenetrend rendelkezésünkre áll a menetrend.txt állományban. Készítsen új adatbázist HAJO néven! A mellékelt adatállományt

Részletesebben

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció

Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia

Részletesebben

TANSZÉKI ADMINISZTRÁTORI SEGÉDLET: NEPTUN TÁRGYKEZELÉS, KURZUSKEZELÉS

TANSZÉKI ADMINISZTRÁTORI SEGÉDLET: NEPTUN TÁRGYKEZELÉS, KURZUSKEZELÉS TANSZÉKI ADMINISZTRÁTORI SEGÉDLET: NEPTUN TÁRGYKEZELÉS, KURZUSKEZELÉS Kurzus meghirdetése adott félévre Adott félév kurzusainak a meghirdetése a TÁRGYAK 46800 felületen történik. Elérési útvonal a jobboldali

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java 2. gyakorlat Függvények Általános prototípus Módosítószavak Láthatóság: public, protected, private. Ha nem definiált, akkor úgynevezett package-private láthatóság. Lehet abstract

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked

Részletesebben

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai

3. Határozza meg és írja ki a minta szerint, hogy a forrásállományban hány kémiai elem felfedezési adatai Kémiai elemek felfedezése A kémiai elemek kémiailag tovább már nem bontható, egyszerű anyagok. Jelenleg 118 különböző kémiai elemet ismerünk, közüliik a Földön 94 található meg a természetben, ezeket természetes

Részletesebben

Táblázatok kezelése. 1. ábra Táblázat kezelése menüből

Táblázatok kezelése. 1. ábra Táblázat kezelése menüből Táblázat beszúrása, létrehozása A táblázatok készítésének igénye már a korai szövegszerkesztőkben felmerült, de ezekben nem sok lehetőség állt rendelkezésre. A mai szövegszerkesztőket már kiegészítették

Részletesebben

Grafikus felhasználói felületek. Abstract Window Toolkit, a java.awt és java.awt.event csomagok

Grafikus felhasználói felületek. Abstract Window Toolkit, a java.awt és java.awt.event csomagok Grafikus felhasználói felületek készítése és eseménykezelés Java-ban Abstract Window Toolkit, a java.awt és java.awt.event csomagok Abstract Window Toolkit Absztraktizálás: az osztályok és funkcionalitások

Részletesebben

Másodlagos adatok beszerzése és külső adattábla csatolása ArcGIS 10-ben

Másodlagos adatok beszerzése és külső adattábla csatolása ArcGIS 10-ben Másodlagos adatok beszerzése és külső adattábla csatolása ArcGIS 10-ben oktatási segédlet Gazdaságföldrajz, Geoökonómia és Fenntartható Fejlődés Intézet Budapesti Corvinus Egyetem Készítette: Varga Ágnes

Részletesebben

DebitTray program Leírás

DebitTray program Leírás DebitTray program Leírás Budapest 2015 Bevezetés Egy-egy kintlévőséghez tartozó határidő elmulasztásának komoly következménye lehet. Éppen ezért a Kintlévőség kezelő program főmenü ablakában a program

Részletesebben

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK Horváth Győző Egyetemi adjunktus 1117 Budapest, Pázmány Péter sétány 1/C, 2.420 Tel: (1) 372-2500/1816 2 Ismétlés Ismétlés 3 Fájl/Adatbázis 3 4 Szerver 2 CGI

Részletesebben

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra.

Hello World Servlet. Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra. Hello World Servlet Készítsünk egy szervletet, amellyel összeadhatunk két számot, és meghívásakor üdvözlőszöveget ír a konzolra. Hozzunk létre egy Dynamic Web projectet File New Other itt a következőket

Részletesebben

Ügyviteli rendszerek hatékony fejlesztése Magic Xpa-val mobilos funkciókkal kiegészítve. Oktatók: Fülöp József, Smohai Ferenc, Nagy Csaba

Ügyviteli rendszerek hatékony fejlesztése Magic Xpa-val mobilos funkciókkal kiegészítve. Oktatók: Fülöp József, Smohai Ferenc, Nagy Csaba Ügyviteli rendszerek hatékony fejlesztése Magic Xpa-val mobilos funkciókkal kiegészítve Oktatók: Fülöp József, Smohai Ferenc, Nagy Csaba Programozás alapjai Ha egy adott adattáblára Ctrl + G t nyomunk,

Részletesebben

3. Ezután a jobb oldali képernyő részen megjelenik az adatbázistábla, melynek először a rövid nevét adjuk meg, pl.: demo_tabla

3. Ezután a jobb oldali képernyő részen megjelenik az adatbázistábla, melynek először a rövid nevét adjuk meg, pl.: demo_tabla 1. Az adatbázistábla létrehozása a, Ha még nem hoztunk létre egy adatbázistáblát sem, akkor a jobb egérrel a DDIC-objekt. könyvtárra kattintva, majd a Létrehozás és az Adatbázistábla menüpontokat választva

Részletesebben

Access adatbázis elérése OLE DB-n keresztül

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

Részletesebben

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*; Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely

Részletesebben

BME MOGI Gépészeti informatika 4.

BME MOGI Gépészeti informatika 4. BME MOGI Gépészeti informatika 4. 1. feladat önálló feladatmegoldás Generáljon két 1 és 10 közötti véletlen egész számot, majd kiírja ezekre a számokra a tízes szorzótáblákat! Ha az első generált szám

Részletesebben

ElektrO-ParT elektronikai alkatrész nyilvántartó program leírás.

ElektrO-ParT elektronikai alkatrész nyilvántartó program leírás. ElektrO-ParT elektronikai alkatrész nyilvántartó program leírás. 1. ábra A program, indítás után az 1. ábra szerint fog megjelenni. Ebben az ablakban tudunk új alkatrészt felvinni vagy meglévőt módosítani.

Részletesebben

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos

Kilencedik témakör: Lazarus-Firebird. Készítette: Dr. Kotsis Domokos PASzSz Kilencedik témakör: Lazarus-Firebird Készítette: Dr. Kotsis Domokos Az SQLdb fülön IBConnection Kapcsolat A Data Access fülön Az SQLdb fülön... Select 1. Az SQLQuery lezárása. (Active := false,

Részletesebben

Vizuális programozás gyakorlat

Vizuális programozás gyakorlat Vizuális programozás gyakorlat Képnézegető alkalmazás WPF alapú felülettel Készítsen egy WPF képnézegető alkalmazást, ami a mellékelt ábrának megfelelően a bal oldali oszlopban (Grid) egy könyvtárban található

Részletesebben

Segítség a megoldáshoz: 1. Készítse el a Window-t az ábrának és az osztálydiagramnak megfelelően.

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

Részletesebben

Listák, szótárak, fájlok Listák, szótárak, fájlok

Listák, szótárak, fájlok Listák, szótárak, fájlok lista fogalma, használata listák másolása (alap szintű, teljes körű) szótárak fogalma, használata adatbázis alkalmazás fejlesztése műveletek fájlokkal (megnyítás, írás, olvasás, lezárás) rejtjelező alkalmazás

Részletesebben

Információs technológiák 1. Gy: HTML alapok

Információs technológiák 1. Gy: HTML alapok Információs technológiák 1. Gy: HTML alapok 1/53 B ITv: MAN 2017.09.28 Hogyan kezdjünk hozzá? Készítsünk egy mappát, legyen a neve mondjuk: Web Ez lesz a munkakönyvtárunk, ide kerül majd minden létrehozott

Részletesebben

Átutalási csomag karbantartó modul

Átutalási csomag karbantartó modul Átutalási csomag karbantartó modul 1. Bevezetés... 2 2. Új átutalási csomag felvitele... 2 2.1. Új tétel felvitele... 4 2.2. Átutalási csomag tétel törlése... 8 2.3. Bankszámlaszám módosítása... 8 2.4.

Részletesebben

OOP: Java 6.Gy: Java osztályok. Definíció, static, túlterhelés

OOP: Java 6.Gy: Java osztályok. Definíció, static, túlterhelés OOP: Java 6.Gy: Java osztályok Definíció, static, túlterhelés 45/1 B ITv: MAN 2019.03.18 Feladat Készítsen egy Alkalmazott osztályt saját csomagban, név, kor és fizetés adatokkal. Legyen egy osztályszintű

Részletesebben

Aromo Szöveges értékelés normál tantárggyal

Aromo Szöveges értékelés normál tantárggyal Aromo Szöveges értékelés normál tantárggyal Aromo Iskolaadminisztrációs Szoftver Felhasználói kézikönyv -- Szöveges értékelés 1 Tartalomjegyzék Aromo Szöveges értékelés normál tantárggyal 1 Bevezetés 3

Részletesebben

Oktatási anyag az MLSZ-IFA rendszerhez

Oktatási anyag az MLSZ-IFA rendszerhez Oktatási anyag az MLSZ-IFA rendszerhez Nyilvántartási szám: ISO 9001: 503/1256(2)-1177(2) BIZALMAS INFORMÁCIÓ JET-SOL JET-SOL TARTALOMJEGYZÉK 1 Sportszervezeti adminisztráció... 3 1.1 Sportszervezeti adatok

Részletesebben

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. 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.

Részletesebben

Oktatási segédanyag. Weboldalszerkesztési gyakorlatok

Oktatási segédanyag. Weboldalszerkesztési gyakorlatok Oktatási segédanyag Weboldalszerkesztési gyakorlatok Bevezetés A korábbi oktatási segédanyagokban megismertük a weboldalszerkesztés gyakorlatát. Ennek a segédanyagnak a célja, hogy gyakorlati példákon

Részletesebben

Prezentáció Microsoft PowerPoint XP

Prezentáció Microsoft PowerPoint XP Prezentáció Microsoft PowerPoint XP Megoldások 1. A program indításakor a Munkaablakban válasszuk az Előadás-tervező varázslóval hivatkozást! A Varázsló segítségével hozzuk létre a bemutatót! A kész bemutatót

Részletesebben

SZE INFORMATIKAI KÉPZÉS 1

SZE INFORMATIKAI KÉPZÉS 1 SZE INFORMATIKAI KÉPZÉS 1 A feladat megoldása során a Word 2010 használata a javasolt. Ebben a feladatban a következőket fogjuk gyakorolni: Kötetegyesítés. Címsorok előléptetése. Vázlat nézet használata.

Részletesebben

Teljesítményértékelések eredményeinek rögzítése a Neptun Egységes Tanulmányi Rendszerben

Teljesítményértékelések eredményeinek rögzítése a Neptun Egységes Tanulmányi Rendszerben Teljesítményértékelések eredményeinek rögzítése a Neptun Egységes Tanulmányi Rendszerben Tartalomjegyzék 1 Bevezetés... 2 2 Feladatok kiadása a Neptunban manuálisan... 3 3 Feladatok kiadása a Neptunban

Részletesebben

Pénzintézetek jelentése a pénzforgalmi jelzőszám változásáról

Pénzintézetek jelentése a pénzforgalmi jelzőszám változásáról Pénzintézetek jelentése a pénzforgalmi jelzőszám változásáról Felhasználói Segédlet MICROSEC Kft. 1022 Budapest, Marczibányi tér 9. telefon: (1)438-6310 2002. május 4. Tartalom Jelentés készítése...3 Új

Részletesebben

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 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

Részletesebben

Szöveges fájlok szerkesztése Jegyzettömb használata

Szöveges fájlok szerkesztése Jegyzettömb használata Szöveges fájlok szerkesztése A Jegyzettömb csak szöveges dokumentum (TXT fájl) szerkesztésére alkalmas (Editor). Ez azt jelenti, hogy a begépelt szöveget nem tudjuk kedvünk szerint megformázni, vagyis

Részletesebben

Stateless Session Bean

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

Részletesebben

Bevezetés a QGIS program használatába Összeálította dr. Siki Zoltán

Bevezetés a QGIS program használatába Összeálította dr. Siki Zoltán Bevezetés Bevezetés a QGIS program használatába Összeálította dr. Siki Zoltán A QGIS program egy nyiltforrású asztali térinformatikai program, mely a http://www.qgis.org oldalról tölthető le. Ebben a kis

Részletesebben

Általános funkciók partitúrái. Felhasználói dokumentáció verzió 2.0.

Általános funkciók partitúrái. Felhasználói dokumentáció verzió 2.0. Általános funkciók partitúrái Felhasználói dokumentáció verzió 2.0. Budapest, 2006 Változáskezelés Verzió Dátum Változás Pont Cím Oldal Kiadás: 2006.11.14. Verzió: 2.0. Oldalszám: 2 / 20 Tartalomjegyzék

Részletesebben

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

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

Részletesebben

Alapok (a K2D rendszer alapjai)

Alapok (a K2D rendszer alapjai) Alapok (a K2D rendszer alapjai) 1 1. Bevezetés... 3 2. Fastruktúra... 3 2.1. Nyitása, zárása... 3 2.2. Fülek... 5 2.3. Licence kulcs érvényesítése... 9 2.4. Új elem felvitele... 10 2.5. Elem törlése...

Részletesebben

Szoftvertechnolo gia gyakorlat

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

Részletesebben