Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 1

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 1"

Átírás

1 5. A felhasználói interfész felépítése 6. Elrendezésmenedzserek 7. Eseményvezérelt programozás 8. Swing-komponensek 9. Grafika, képek 10. Alacsony szintű események 11. Belső eseménykezelés, komponensgyártás 12. Applet Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 1

2 5. A felhasználói interfész felépítése 1. Komponensek és azok tulajdonosi hierarchiája 2. AWT és Swing osztályhierarchia 3. Swing mintaprogram 8. Az absztrakt JComponent 4 Jellemzők osztály 5. Pont, méret, téglalap 9. Container osztály 6. Koordinátarendszer 10. java.awt.window osztály 7. Szín, betű 11. JFrame osztály Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 2

3 Komponensek tulajdonosi hierarchiája :JFrame :JMenuBar :JWindow contentpane :JPanel :JDialog contentpane :JPanel Konténer komponens :JLabel :JTextField :JButton :JButton :JLabel :JButton :JTextField :JTextArea :JComboBox :JList :JCheckBox :JScrollbar :JRadioButton :JRadioButton Vezérlő komponens :ButtonGroup Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 3

4 Tulajdonosi viszony Konténer és komponense: A konténer komponensei fizikailag sosem kerülhetnek a konténeren kívülre Ablak és ablaka: A gyerek ablakok elhelyezkedése és mérete független a szülő ablaktól Tulajdonosi hierarchia Felépítése a programozó feladata! Az a komponens, amely nincs rajta a tulajdonosi hierarchián, nem látható és nem képes eseményekre reagálni! Szülő megszűnése gyerek megszűnése Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 4

5 java.lang.object +--FlowLayout +--GridLayout +--BorderLayout +--java.util.eventobject +--AWTEvent Point +--Dimension +--Rectangle +--Polygon +--Font +--Color +--Graphics +--Image +--Component +--Label +--Button Container +--Panel +--Applet java.awt +--javax.swing.japplet +--java.awt.window +-- javax.swing.jwindow +--java.awt.frame +-- javax.swing.jframe +-- java.awt.dialog +--javax.swing.jdialog java.lang.object +--Component AWT és Swing +--Container +--JComponent +--JLabel javax.swing +--AbstractButton +--JButton +--JToggleButton +--JCheckBox +--JRadioButton +--JMenuItem +--JCheckBoxMenuItem +--JRadioButtonMenuItem +--JMenu +--JMenuBar +--JComboBox +--JTextComponent +--JTextField +--JTextArea +--JList +--JScrollBar +--JScrollPane +--JPanel +--JColorChooser +--JOptionPane +--ButtonGroup +--ImageIcon +--Timer Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 5

6 java.lang.object +--FlowLayout +--GridLayout +--BorderLayout +--java.util.eventobject +--AWTEvent Point +--Dimension +--Rectangle +--Polygon +--Font +--Color +--Graphics +--Image java.lang.object +--Component +--Label java.awt +--Button Container +--Panel +--Applet +--Window +--Frame +--Dialog Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 6

7 Object +--Component +--Container +--Panel +--Applet +--JApplet +--Window +--JWindow +--Frame +--JFrame +--Dialog +--JDialog +--JComponent ButtonGroup +--ImageIcon +--Timer JComponent +--JLabel javax.swing +--AbstractButton +--JButton +--JToggleButton +--JCheckBox +--JRadioButton +--JMenuItem +--JCheckBoxMenuItem +--JRadioButtonMenuItem +--JMenu +--JMenuBar +--JComboBox +--JTextComponent +--JTextField +--JTextArea +--JList +--JScrollBar +--JScrollPane +--JPanel +--JColorChooser +--JOptionPane Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 7

8 Swing mintaprogram Feladat Frame teszt Készítsük el az itt látható keretet! A keret bal felső sarka a képernyő (100,50) pozícióján legyen, mérete 300*100, címe: Frame teszt. A kereten legyen egy címke a Döntsd el: szöveggel, továbbá legyen két nyomógomb, OK és Nem OK felirattal! A programnak egyelőre nem kell reagálnia semmilyen eseményre. fr lbinfo btok btnemok Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 8

9 1. megoldás Keret összerakása kívülről main FrameTest1 JFrame() settitle("frame teszt") setbounds(100,50,300,100) setdefaultcloseoperation(jframe.exit_on_close) cp = getcontentpane() setvisible(true) fr:jframe Együttműködési diagram setlayout(new FlowLayout()) add(lbinfo) add(btok) add(btnemok) cp:jpanel :FlowLayout lbinfo:jlabel btok:jbutton btnemok:jbutton Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 9

10 import java.awt.*; import javax.swing.*; public class FrameTest1 { public static void main (String args[]) { JFrame fr; JLabel lbinfo; JButton btok, btnemok; fr = new JFrame(); fr.settitle("frame teszt"); fr.setbounds(100,50,300,100); fr.setdefaultcloseoperation(jframe.exit_on_close); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 10

11 Container cp = fr.getcontentpane(); cp.setlayout(new FlowLayout()); lbinfo = new JLabel("Döntsd el:"); btok = new JButton("OK"); btnemok = new JButton("Nem OK"); cp.add(lbinfo); cp.add(btok); cp.add(btnemok); fr.setvisible(true); } // main } // FrameTest1 Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 11

12 2. megoldás Keret összerakása belülről main FrameTest2 SpecFrame() :SpecFrame settitle("frame teszt") setbounds(100,50,300,100) cp = getcontentpane() setvisible(true), setd.closeop.(...) Együttműködési diagram setlayout(new FlowLayout()) add(lbinfo) add(btok) cp:jpanel add(btnemok) :FlowLayout lbinfo:jlabel btok:jbutton btnemok:jbutton Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 12

13 import java.awt.*; import javax.swing.*; class SpecFrame extends JFrame { JLabel lbinfo; JButton btok, btnemok; public SpecFrame() { settitle("frame teszt"); setbounds(100,50,300,100); setdefaultcloseoperation(jframe.exit_on_close); Container cp = getcontentpane(); cp.setlayout(new FlowLayout()); lbinfo = new JLabel("Döntsd el:"); btok = new JButton("OK"); btnemok = new JButton("Nem OK"); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 13

14 cp.add(lbinfo); cp.add(btok); cp.add(btnemok); setvisible(true); } // konstruktor } // SpecFrame public class FrameTest2 { public static void main (String args[]) { new SpecFrame(); } // main } // FrameTest2 Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 14

15 3. megoldás A konténer komponenseit nem deklaráljuk, pakolunk class SpecFrame extends JFrame { public SpecFrame() { cp.add(new JLabel("Döntsd el:")); cp.add(new JButton("OK")); cp.add(new JButton("Nem OK")); pack(); show(); } // konstruktor } // SpecFrame Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 15

16 Jellemzők Property: Beállítható és lekérdezhető tulajdonság Deklaráció: PropType propname; Példák: beállító metódus (set): void setpropname(proptype propname) lekérdező metódus (get / is): PropType getpropname() boolean ispropname() Jellemző Beállító metódus Lekérdező metódus int columns void setcolumns(int columns) int getcolumns() boolean visible void setvisible(boolean visible) boolean isvisible() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 16

17 Pont, méret, téglalap Osztályok a látható komponensek paraméterezéséhez Point osztály: megjegyzi egy pont x és y koordinátáit Dimension osztály: megjegyzi egy téglalap méretét (szélességét és magasságát) Rectangle osztály: megjegyzi egy téglalap helyzetét (location): bal felső sarkának x és y koordinátáit, és méretét (dimension): szélességét (width) és magasságát (height) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 17

18 Feladat Pontok és téglalapok Adva van két téglalap: az egyik téglalap bal felső sarka a (100,100) pont, mérete 50*30; a másik téglalap bal felső sarka a (120,80) pont, mérete 20*60. Határozzuk meg a téglalapok közös részét! Vizsgáljuk meg, hogy a (130,110) pont benne van-e a közös részben! Határozzuk meg azt a legkisebb téglalapot, amely tartalmazza a téglalapokat és egy megadott pontsorozat összes pontját! Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 18

19 import java.awt.*; public class PontTegla { public static void main (String args[]) { Rectangle r1 = new Rectangle(100,100,50,30); Rectangle r2 = new Rectangle(); r2.setlocation(120,80); r2.setsize(20,60); p r2 nagy Rectangle kozos = r1.intersection(r2); System.out.println("Közös: "+kozos); Point p = new Point(130,110); r1 kozos Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 19

20 } } if (kozos.contains(p)) else System.out.println(p+" benne van"); System.out.println(p+" nincs benne"); Point[] pontok = {new Point(50,80),new Point(15,70), new Point(30,95),new Point(120,200)}; Rectangle nagy = r1.union(r2); for (int i=0; i<pontok.length; i++) nagy.add(pontok[i]); System.out.println("Nagy: "+nagy); System.out.println("Nagy mérete: "+nagy.getsize()); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 20

21 Koordinátarendszer (0,0) x screensize.width=1024 y screensize.height=768 A képernyő bal alsó sarka: (1023,767) Dimension screensize=toolkit.getdefaulttoolkit().getscreensize(); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 21

22 Betű, szín Font osztály Adott tulajdonságú fontot (betűfajtát) tárol Tulajdonságok String fontname (név, pl.: Arial, Monospaced) int style (stílus, pl.: PLAIN, BOLD, ITALIC) int size (betűméret pontokban) Példánya változtathatatlan Minden komponensnek van fontja Logikai fontnevek: SansSerif, Serif, Monospaced, Dialog, DialogInput Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 22

23 Color osztály RGB színt tárol Minden szín a 3 alapszín (piros,zöld,kék) keveréke Tulajdonságok int red (piros összetevő, ) int green (zöld összetevő, ) int blue (kék összetevő, ) Példánya változtathatatlan Minden komponensnek van egy háttérszíne és egy előtérszíne (betűszíne) Konstans szín objektumokat definiál: Color.black, Color.blue, Color.white,... Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 23

24 SystemColor osztály Rendszer által használt színeket definiál: SystemColor.info, SystemColor.infoText, SystemColor.desktop,... Színek, betűk használata lb = new JLabel("Szöveg:"); lb.setfont(new Font( Arial",Font.BOLD,24)); lb.setbackground(systemcolor.control); lb.setforeground(color.red); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 24

25 Az absztrakt JComponent osztály Absztrakt osztály A képernyőn megjelenő Swing komponensek közös őse Mezők static final float CENTER_ALIGNMENT,... Jellemzők Color background Color foreground boolean opaque Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 25

26 Jellemzők (folyt.) Font font Cursor cursor Border border Dimension maximumsize Dimension minimumsize Dimension preferredsize float alignmentx float alignmenty String tooltiptext boolean visible boolean enabled boolean requestfocusenabled Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 26

27 Helyzet, méret int getx() int gety() int getwidth() int getheight() Rectangle getbounds() Point getlocation() Point getlocationonscreen() void setbounds(int x, int y, int width, int height) void setlocation(int x, int y) void setsize(int width, int height) boolean contains(int x, int y) boolean contains(point p) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 27

28 Láthatóság, érvényesség boolean isdisplayable() void validate() Fókusz, eseményfogadás boolean hasfocus() void requestfocus() void transferfocus() Szülő, állapot Container getparent() String tostring() void list() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 28

29 java.awt.container osztály Konténer-komponensek közös őse Jellemzők LayoutManager layoutmgr Komponens hozzáadása, kivétele Component add(component comp) Component add(component comp, int index) void remove(component comp) void remove(int index) void removeall() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 29

30 Gyerekkomponensek int getcomponentcount() Component[] getcomponents() Component getcomponent(int n) Component getcomponentat(int x, int y) Component getcomponentat(point p) boolean isancestorof(component comp) Elrendezés Dimension getmaximumsize() Dimension getminimumsize() Dimension getpreferredsize() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 30

31 java.awt.window osztály Összes AWT és Swing ablak komponens közös őse Utódai: Frame, JFrame, Dialog, JDialog, JWindow Metódusok void pack() void show() boolean isshowing() void hide() void setlocationrelativeto(component c) void toback() void tofront() void dispose() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 31

32 Metódusok (folyt.) void addwindowlistener(windowlistener l) void removewindowlistener(windowlistener l) Component getfocusowner() Window getowner() Window[] getownedwindows() Aktív ablak Az operációs rendszerben pontosan egy alkalmazás aktív, egy alkalmazásban pedig pontosan egy ablak aktív. Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 32

33 JFrame osztály Közvetlen ős: java.awt.frame A Swing egyetlen natív komponense Keret: legfelső szintű ablak, nincs tulajdonosa Van szegélye, ikonja, címe és menüsora Komponenseit a tartalompanelbe (content pane) kell tenni Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 33

34 Jellemzők String title Image iconimage MenuBar menubar boolean resizable int state Metódusok Container getcontentpane() setdefaultcloseoperation(int operation) static Frame[] getframes() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 34

35 6. Elrendezésmenedzserek 1. Az elrendezésmenedzserek tulajdonságai 2. FlowLayout sorfolytonos elrendezés 3. GridLayout rácsos elrendezés 4. BorderLayout határ menti elrendezés 5. JPanel, az összefogó konténer Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 35

36 Elrendezésmenedzserek konténer komponens1 konténer :Container layoutmanager :LayoutManager komponens2 komponens3 komponens1 komponens2 komponens3 Minden konténernek van elrendezésmenedzsere Az ablak pack utasítására automatikusan elrendezi a konténer komponenseit, azok helyzetét és méretét Előredefiniált elrendezésmenedzserek: FlowLayout, GridLayout, BorderLayout, CardLayout, GridBagLayout Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 36

37 LayoutManager interfész Minden elrendezésmenedzsernek implementálnia kell a LayoutManager interfészt. Container osztály idetartozó metódusai Component add(component comp) Component add(component comp, int index) void add(component comp, Object constraints) void add(component comp, Object constraints, int index) LayoutManager getlayout() void setlayout(layoutmanager mgr) void validate() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 37

38 FlowLayout sorfolytonos elrendezés Sorfolytonos elhelyezés balról jobbra Elemek mérete: előnyös méret (preferredsize) alapján, az ablak átméretezésekor nem változik Sorok igazítása(align): balra, jobbra, középre Komponensek közötti konstans távolság vízszintesen(hgap) és függőlegesen(vgap) JPanel és Applet alapértelmezett elrendezésmenedzsere Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 38

39 Feladat FlowLayoutTest Tegyünk az alkalmazás 700*100-as méretű keretébe 10 szövegmező (JTextField) és nyomógomb (JButton) párost, a sorokat középre igazítva! A szövegmezők 5 oszlopnyi helyet foglaljanak; a gombokon a Gomb felirat és a gomb sorszáma szerepeljen! A futó programban interaktív módon méretezzük át a keretet, és közben figyeljük meg, hogyan változik az elemek elrendezése! vgap=5 hgap=5 Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 39

40 public class FlowLayoutTest extends JFrame { private Container cp = getcontentpane(); } public FlowLayoutTest() { setdefaultcloseoperation(exit_on_close); settitle("flowlayout"); LayoutManager lm = new FlowLayout(); cp.setlayout(lm); for (int i=1; i<=10; i++) { cp.add(new JTextField(5)); cp.add(new JButton("Gomb "+i)); } setsize(700,150); show(); }... Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 40

41 GridLayout rácsos elrendezés Megadott sor és oszlopszámú rácson való elhelyezés Rács cellái: egyenlő méretű téglalapok, minden komponens egy téglalapot foglal el (nincs lyuk!) Elemek mérete: cellaméret, az ablak átméretezésekor változik Komponensek közötti konstans távolság vízszintesen(hgap) és függőlegesen(vgap) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 41

42 Feladat GridLayoutTest Tegyünk az alkalmazás keretére képzeletben egy 6*2-es rácsot, és tegyünk az első 10 rácshelyre egy-egy sorszámozott nyomógombot! A komponensek közötti vízszintes távolság legyen 20 pont, a függőleges távolság pedig legyen 10 pont! A futó programban interaktív módon méretezzük át a keretet! vgap=10 hgap=20 Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 42

43 public class GridLayoutTest extends JFrame { } public GridLayoutTest() { setdefaultcloseoperation(exit_on_close); settitle("gridlayout"); getcontentpane().setlayout(new GridLayout(6,2,20,10)); for (int i=1; i<=10; i++) { getcontentpane().add(new JButton("Gomb "+i)); } pack(); show(); } public static void main (String args[]) { } new GridLayoutTest(); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 43

44 BorderLayout határ menti elrendezés 4+1 égtájon való elhelyezés: North (Észak), South (Dél), West (Nyugat), East (Kelet), Center (Közép) Azonos égtájon levő elemek takarják egymást Elemek mérete az ablak átméretezésekor változik Komponensek közötti konstans távolság vízszintesen(hgap) és függőlegesen(vgap) Window és leszármazottainak (JFrame, JDialog), JFrame tartalompaneljének elrendezésmenedzsere Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 44

45 Feladat BorderLayoutTest Tegyünk a 400*200-as méretű keretbe 5 darab nyomógombot a képen látható módon! A vízszintes köz 2, függőleges köz 1 legyen! A futó programban interaktív módon méretezzük át a keretet! Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 45

46 class BorderLayoutTest extends JFrame { Container cp = getcontentpane(); } public BorderLayoutTest() { setdefaultcloseoperation(exit_on_close); settitle("borderlayout"); cp.setlayout(new BorderLayout(2,1)); cp.add(new JButton("North - Észak - Felső"),"North"); cp.add(new JButton("South - Dél"),"South"); cp.add(new JButton("West - Nyugat - Bal"),"West"); cp.add(new JButton("East - Kelet - Jobb"),"East"); cp.add(new JButton("Center - Középső"),"Center"); setsize(400,200); show(); } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 46

47 JPanel, az összefogó konténer Konténer, mely összefogja a benne levő elemeket Láthatatlan, vagy látható (szín, keret) Alapértelmezésben dupla pufferelésű Saját elrendezésmenedzsere van, alapértelmezésben FlowLayout Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 47

48 Feladat Személy bevitel Készítsük el az ábrán látható keretet! A Név beviteli mező 20 oszlopos, a Születési év mező 6 oszlopos legyen! A két címkézett beviteli mező, és a gombok egy-egy sort alkossanak; a sorok egymás alatt jelenjenek meg! pnnev szemelypanel (kitölti a keretet) pnszulev pngomb Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 48

49 Tulajdonosi hierarchia :SzemelyBevitel contentpane:jpanel :SzemelyPanel :GridLayout pnnev: JPanel pnszulev: JPanel pngomb: JPanel :FlowLayout :FlowLayout :FlowLayout :JLabel tfnev :JTextField :JLabel tfszulev :JTextField btok :JButton btcancel :JButton Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 49

50 7. Eseményvezérelt programozás 1. Mintaprogram 2. Eseményosztályok 3. Alacsony és magas szintű események 4. Eseménydelegációs modell 5. A felhasználói felület tervezése 6. Eseményadapterek Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 50

51 Mintaprogram Feladat Pittyegő keret Tegyünk a keretbe egy Pittyeg feliratú gombot. Ha lenyomják a gombot, akkor a számítógép pittyegjen egyet! :PittyegoKeret az esemény figyelője (ActionListener) btpittyeg:jbutton az esemény forrása (ActionEvent) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 51

52 Együttműködési diagram addactionlistener(this) ev:actionevent PittyegoKeret:ActionListener Figyelőobjektum (keret) Osztálydiagram «interfész» ActionListener actionperformed(ev) JFrame btpittyeg:jbutton Forrásobjektum (gomb) +actionperformed(ev:actionevent) Component PittyegoKeret +PittyegoKeret() +actionperformed(ev:actionevent) +main(args:string[]) JButton +addactionlistener(l:actionlistener) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 52

53 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class PittyegoKeret extends JFrame implements ActionListener { private JButton btpittyeg = new JButton("Pittyeg"); public PittyegoKeret() { setdefaultcloseoperation(exit_on_close); getcontentpane().add(btpittyeg); btpittyeg.addactionlistener(this); pack(); show(); } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 53

54 public void actionperformed (ActionEvent ev) { } Toolkit.getDefaultToolkit().beep(); public static void main (String args[]) { new PittyegoKeret(); } } // PittyegoKeret Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 54

55 Eseményosztályok Esemény: az alkalmazás által létrehozott objektum, mely a vele összefüggő információkat tartalmazza Esemény útja operációs rendszer eseménysora alkalmazás forrásobjektum esemény figyelői A komponensen a felhasználó csak akkor válthat ki eseményt, ha a komponens eleme az alkalmazás komponenshierarchiájának látható Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 55

56 Eseményosztályok java::lang::object Alacsony szintű események java::util::eventobject java::awt::awtevent javax::swing::event java::awt::event ListSelectionEvent <<interfész>> DocumentEvent Magas szintű események Component- Event Container- Event Action- Event Focus- Event Key- Event Adjustment- Event Input- Event Mouse- Event Window- Event Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 56

57 EventObject osztály protected Object source Object getsource() AWTEvent osztály Mezők protected int id (Pl.: MOUSE_CLICKED) protected boolean consumed static final int RESERVED_ID_MAX static final long FOCUS_EVENT_MASK static final long KEY_EVENT_MASK... Metódusok int getid() protected void consume() protected boolean isconsumed() Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 57

58 Alacsony és magas szintű események Alacsony szintű esemény Operációs rendszer szintjén történő elemi esemény Forrása csak komponens lehet ComponentEvent utódja Alacsony szintű AWT események: ComponentEvent: Komponensesemény ContainerEvent: Konténeresemény FocusEvent: Fókuszesemény WindowEvent: Ablakesemény KeyEvent: Billentyűzetesemény MouseEvent: Egéresemény Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 58

59 Magas szintű esemény Minden esemény, ami nem alacsony szintű Általában logikai esemény Forrása nem feltétlenül komponens Magas szintű események: ActionEvent: Akcióesemény AdjustmentEvent: Igazítási esemény ListSelectionEvent: Listakiválasztás-esemény DocumentEvent: Dokumentumesemény Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 59

60 Eseménydelegációs modell Modell elemei: Eseményobjektum Eseményforrás (forrásobjektum) és figyelőláncai Eseményfigyelő Az eseményt figyelő és lekezelő objektum Fel kell fűzni a forrásobjektum megfelelő figyelőláncára Osztályának implementálnia kell a figyelő interfészt Esemény feldolgozása Forrásobjektum Figyelő objektumok Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 60

61 A JButton akció- és billentyűzetfigyelő lánca :ActionListener :ActionListener addactionlistener() removeactionlistener() addkeylistener() removekeylistener()... :KeyListener :KeyListener... actionperformed(ev) keytyped(ev) keypressed(ev) keyreleased(ev) bt:jbutton ev:actionevent vagy ev:keyevent Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 61

62 Eseményosztály Forrás Figyelő interfész Felfűző metódus Lekezelő metódusok Alacsony szintű események ComponentEvent Component ComponentListener addcomponentlistener ContainerEvent Container ContainerListener addcontainerlistener FocusEvent Component FocusListener addfocuslistener KeyEvent Component KeyListener addkeylistener MouseEvent Component MouseListener addmouselistener MouseEvent Component MouseMotion- Listener addmousemotion- Listener componentresized componentmoved componentshown componenthidden componentadded componentremoved focusgained focuslost keytyped keypressed keyreleased mousepressed mousereleased mouseentered mouseexited mouseclicked mousedragged mousemoved Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 62

63 Eseményosztály Forrás Figyelő interfész Felfűző metódus Lekezelő metódusok WindowEvent Window WindowListener addwindowlistener windowopened windowclosing windowclosed windowiconified windowdeiconified windowactivated windowdeactivated Magas szintű események ActionEvent Abs.B. utódai ActionListener addactionlistener actionperformed JComboBox JTextField AdjustmentEvent JScrollBar AdjustmentListener addadjustmentlistener adjustmentvalue- Changed ListSelection- Event JList ListSelection- Listener addlistselection- Listener valuechanged DocumentEvent Document DocumentListener adddocumentlistener insertupdate removeupdate changedupdate Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 63

64 A felhasználói felület tervezése Felhasználói felület képének megtervezése: keret és komponensei Eseményforrások meghatározása: azonosító/osztály + zárójelben esemény osztálya Eseményfigyelők meghatározása: azonosító/osztály + zárójelben: figyelő interfész, figyelt objektum(ok) azonosítója (azonosítói) Szükség esetén tulajdonosi hierarchia megtervezése Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 64

65 Feladat Nyomásszámláló Tegyünk két nyomógombot a keretbe, indulásképpen mindkettőnek "0" legyen a felirata! Ha lenyomnak egy gombot, akkor növeljük meg eggyel a rajta levő szám értékét! btbal (ActionEvent) :NyomasSzamlalo (ActionListener, btbal,btjobb) btjobb (ActionEvent) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 65

66 public class NyomasSzamlalo extends JFrame implements ActionListener { private JButton btbal, btjobb; private int nbal=0, njobb=0; public NyomasSzamlalo() { setdefaultcloseoperation(exit_on_close); Container cp = getcontentpane(); cp.setlayout(new GridLayout(1,2)); cp.add(btbal = new JButton(""+nBal)); cp.add(btjobb = new JButton(""+nJobb)); btbal.addactionlistener(this); btjobb.addactionlistener(this); pack(); show(); } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 66

67 public void actionperformed (ActionEvent ev) { if (ev.getsource()==btbal) btbal.settext(""+ ++nbal); else btjobb.settext(""+ ++njobb); } } public static void main (String args[]) { } new NyomasSzamlalo(); Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 67

68 Feladat Ablak becsukása Készítsünk egy keretet! Ha a keretet be akarják csukni, akkor csukódjon be úgy, hogy a program rövid hangot hallat és befejezi futását! :AblakBecsuk (WindowEvent) (WindowListener) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 68

69 import javax.swing.*; import java.awt.*; import java.awt.event.*; public class AblakBecsuk extends JFrame implements WindowListener { public AblakBecsuk () { setbounds(100,100,200,100); addwindowlistener(this); show(); } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 69

70 } public void windowopened(windowevent ev) { } public void windowclosing(windowevent ev) { Toolkit.getDefaultToolkit().beep(); System.exit(0); } public void windowclosed(windowevent ev) { } public void windowiconified(windowevent ev) { } public void windowdeiconified(windowevent ev) { } public void windowactivated(windowevent ev) { } public void windowdeactivated(windowevent ev) { } public static void main (String args[]) { new AblakBecsuk(); } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 70

71 Eseményadapter Absztrakt osztály Eseményadapterek A figyelő interfészt üres metódusokkal implementálja Figyelő interfész Adapter osztály Metódusok száma ComponentListener ComponentAdapter 4 ContainerListener ContainerAdapter 2 FocusListener FocusAdapter 2 KeyListener KeyAdapter 3 MouseListener MouseAdapter 5 MouseMotionListener MouseMotionAdapter 2 WindowListener WindowAdapter 7 Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 71

72 Feladat Adapterek Oldjuk meg a Az Ablak becsukása feladatot eseményadapterrel! Object «interfész» WindowListener WindowAdapter +windowopened(ev:windowevent) +windowclosing(ev:windowevent) +windowclosed(ev:windowevent) +windowiconified(ev:windowevent) +windowdeiconified(ev:windowevent) +windowactivated(ev:windowevent) +windowdeactivated(ev:windowevent) Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 72

73 1. megoldás: Esemény lekezelése külső eseményadapter osztályban class WindowFigyelo extends WindowAdapter { public void windowclosing(windowevent ev) { System.exit(0); } } public class Adapter1 extends JFrame { public Adapter1() { setbounds(300,300,300,200); addwindowlistener(new WindowFigyelo()); show(); } // main } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 73

74 2. megoldás: Esemény lekezelése belső eseményadapter osztályban public class Adapter2 extends JFrame { class WindowFigyelo extends WindowAdapter { public void windowclosing(windowevent ev) { System.exit(0); } } public Adapter2() { setbounds(300,300,300,200); addwindowlistener(new WindowFigyelo()); show(); } } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 74

75 3. megoldás: Esemény lekezelése névtelen eseményadapter osztályban public class Adapter3 extends JFrame { public Adapter3() { setbounds(300,300,300,200); addwindowlistener(new WindowAdapter() { public void windowclosing(windowevent e) { System.exit(0); } }); show(); } } Gábor Dénes Főiskola (IAI) Programozási technológia (Java) - II. / 75

JAVA PROGRAMOZÁS 5.ELŐADÁS

JAVA PROGRAMOZÁS 5.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 5.ELŐADÁS 2014-2015 tavasz Elrendezésmenedzserek, események 2 Elrendezésmenedzserek Elrendezésmenedzser 3 Minden konténernek van elrendezésmenedzsere

Részletesebben

JAVA PROGRAMOZÁS 4.ELŐADÁS

JAVA PROGRAMOZÁS 4.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 4.ELŐADÁS 2014-2015 tavasz Kivételkezelés, Grafikus felhasználói felület 2 Kivételkezelés Rendszerhibák és kivételek 3 Programot leállító események:

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

VI. Grafikus Java alkalmazások

VI. Grafikus Java alkalmazások VI. Grafikus Java alkalmazások 1. Bevezetés Programjaink egészen eddig algoritmusvezérelt módon, konzolos környezetben kommunikáltunk a felhasználókkal. A program menetét az határozta meg, hogy a kódban

Részletesebben

Java programozási nyelv 8. rész Grafikus felhasználói felület

Java programozási nyelv 8. rész Grafikus felhasználói felület Java programozási nyelv 8. rész Grafikus felhasználói felület Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/17

Részletesebben

Swing. (A javax.swing csomag)

Swing. (A javax.swing csomag) Swing (A javax.swing csomag) SWING komponensek Motiváció: az AWT hátrányai: a toolkit-ek komplexitása (bug-ok forrása volt, sérti a platformfüggetlenséget), kevés lehetőség a megjelenítés befolyásolására,

Részletesebben

Eseménykezelés Java környezetben, AWT alapok

Eseménykezelés Java környezetben, AWT alapok Java programozási nyelv 2007-2008/ősz 4. óra Eseménykezelés Java környezetben, AWT alapok Felhasználói felületek Eseménykezelés AWT ablakozó rendszer legradi.gabor@nik.bmf.hu szenasi.sandor@nik.bmf.hu

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

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

Java felhasználói felület

Java felhasználói felület Java felhasználói felület Eseménykezelés Elek Tibor Eseményosztályok Az események előfordulásakor keletkezik egy megfelelő eseményobjektum. Pl. KeyPressed vagy KeyReleased (billentyű lenyomása vagy felengedése)

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

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

Dr. Iszály György Barna

Dr. Iszály György Barna Dr. Iszály György Barna Ember központú tervezés Cél:... Az emberek a kívánt műveleteket, szolgáltatásokat, és támogató feladatokat minimális stressz mellett maximális hatékonysággal végezhetik el". Három

Részletesebben

JAVA PROGRAMOZÁS 6.ELŐADÁS

JAVA PROGRAMOZÁS 6.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 6.ELŐADÁS 2014-2015 tavasz Swing komponensek; Grafika; Elemi események 2 Swing komponensek Swing konstansok SwingConstants 3 interfész Általános

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

Grafikus felhasználói felületek, eseménykezelés

Grafikus felhasználói felületek, eseménykezelés Programozási Grafikus felhasználói felületek, eseménykezelés alapjai Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 alapjai 3 alapjai 2 alapjai Egészítsük ki a már korábban elkészített Számláló

Részletesebben

Programozás III GRAFIKA RAJZOLÁS SWING FELÜLETEN RAJZOLÁS GRAFIKA HASZNÁLATA. Rajzolni az awt csomag Graphics osztályának metódusaival tudunk.

Programozás III GRAFIKA RAJZOLÁS SWING FELÜLETEN RAJZOLÁS GRAFIKA HASZNÁLATA. Rajzolni az awt csomag Graphics osztályának metódusaival tudunk. Programozás III GRAFIKA GAFIKA RAJZOLÁS GRAFIKA HASZNÁLATA Rajzolni az awt csomag Graphics osztályának metódusaival tudunk. A java.awt.graphics osztály néhány metódusa: drawstring() drawrect() drawoval()

Részletesebben

Java tutorial Grafikus felhaszna loi feluletek

Java tutorial Grafikus felhaszna loi feluletek Grafikus felhaszna loi feluletek Grafikus felhaszna loi feluletek ú A felhaszna lo a programmal gy tartja a kapcsolatot, hogy ö egeret h zogat ö menupontokbol va logat ö gombokat nyomogat ö lista kban

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

Grafikus felületek a programozó szempontjából grafikus elemek absztrakt reprezentációja az egyes elemek tulajdonságait leíró adatstruktúrák.

Grafikus felületek a programozó szempontjából grafikus elemek absztrakt reprezentációja az egyes elemek tulajdonságait leíró adatstruktúrák. AWT Grafika Bevezető Grafikus felületek a programozó szempontjából grafikus elemek absztrakt reprezentációja az egyes elemek tulajdonságait leíró adatstruktúrák. Fogalmak: geometriai alakzatok, felületek,

Részletesebben

Objektumok és osztályok. Az objektumorientált programozás alapjai. Rajzolás tollal, festés ecsettel. A koordinátarendszer

Objektumok és osztályok. Az objektumorientált programozás alapjai. Rajzolás tollal, festés ecsettel. A koordinátarendszer Objektumok és osztályok Az objektumorientált programozás alapjai Rajzolás tollal, festés ecsettel A koordinátarendszer A vektorgrafikában az egyes grafikus elemeket (pontokat, szakaszokat, köröket, stb.)

Részletesebben

Java programozási nyelv 5. rész Osztályok III.

Java programozási nyelv 5. rész Osztályok III. Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás Számítástechnika II. BMEKOKAA153 4. Előadás Dr. Bécsi Tamás A RadioButton komponens Tulajdonságok: bool Checked Állapotjelző két állapot esetén: (true: bejelölve,false: nem bejelölve) Események: Esemény

Részletesebben

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

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

Java programozási nyelv 7. rész Java osztálykönyvtár 1.

Java programozási nyelv 7. rész Java osztálykönyvtár 1. Java programozási nyelv 7. rész Java osztálykönyvtár 1. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. október A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

C# osztályok. Krizsán Zoltán

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

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

Programozás BMEKOKAA146. Dr. Bécsi Tamás 10. Előadás

Programozás BMEKOKAA146. Dr. Bécsi Tamás 10. Előadás Programozás BMEKOKAA146 Dr. Bécsi Tamás 10. Előadás A Timer komponens Tulajdonságok: Típus Tulajdonság Magyarázat bool Enabled Engedélyezve int Interval Meghívás periódusa ms-ban Metódusok: Típus Metódus

Részletesebben

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

Részletesebben

Informatika a felsőoktatásban 2008 Debrecen, augusztus A JAVA NYELV KIVÉTEL- ÉS ESEMÉNYKEZELÉSÉNEK BEMUTATÁSA AZ OKTATÁSBAN

Informatika a felsőoktatásban 2008 Debrecen, augusztus A JAVA NYELV KIVÉTEL- ÉS ESEMÉNYKEZELÉSÉNEK BEMUTATÁSA AZ OKTATÁSBAN A JAVA NYELV KIVÉTEL- ÉS ESEMÉNYKEZELÉSÉNEK BEMUTATÁSA AZ OKTATÁSBAN DEMONSTRATING OF EXCEPTION HANDLING AND EVENT HANDLING IN EDUCATION BY JAVA Seres Iván, Kaczur Sándor Gábor Dénes Főiskola Informatikai

Részletesebben

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:

Részletesebben

Alkalmazásfejlesztési technológia. Vizsgakövetelmények. 1. Megjelenítési technikák. Magasabb szintű komponensek. Feladat - RendererTeszt

Alkalmazásfejlesztési technológia. Vizsgakövetelmények. 1. Megjelenítési technikák. Magasabb szintű komponensek. Feladat - RendererTeszt Vizsgakövetelmények Magasabb szintű komponensek Tanár: Csöndes Emese E-mail: csondes@szamalk.hu Adatbázis-kezelés Tanár: Seres Iván E-mail: seres@szamalk.hu Felkészülést támogató anyagok http://www.gdf.hu/segedletek/270fo.htm

Részletesebben

Szakdolgozat. Mikó Sándor

Szakdolgozat. Mikó Sándor Szakdolgozat Mikó Sándor Debrecen 2010 1 Debreceni Egyetem Informatikai Kar Adatmodell alapú felhasználói felületek Javával Témavezető: Kósa Márk egyetemi tanársegéd Készítette: Mikó Sándor Programtervező

Részletesebben

Vizuális, eseményvezérelt programozás I.

Vizuális, eseményvezérelt programozás I. Vizuális, eseményvezérelt programozás I. Visual Studio ismétlés Grafikus felület tervezése Vezérlők alapvető tulajdonságai, metódusai, eseményei Hibakezelés V 1.0 1 Hallgatói tájékoztató A jelen bemutatóban

Részletesebben

Grafikus felületek készítése 1.

Grafikus felületek készítése 1. Grafikus felületek készítése 1. SWT Budapes( Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Grafikus felületek fejlesztése Java grafikus toolkitek o AWT Na>v widgetek

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

ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés. Készítette: Gregorics Tibor

ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés. Készítette: Gregorics Tibor ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés Készítette: Gregorics Tibor Előfeltétel: OAF (EAF2) Kötelező házi feladatok: 4 darab feladat max. 5-5 pontért Feltételek 2 hét késés: legfeljebb 3

Részletesebben

ArcGIS 8.3 segédlet 5. Dr. Iványi Péter

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

Részletesebben

Már megismert fogalmak áttekintése

Már megismert fogalmak áttekintése Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak

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

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title;

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title; PHP5 objektumok 1 Osztályok class, new book.php: construct () destruct() $b=new Book(); törlés: $b=null; vagy unset ($b); -elnevezési konvenciók private $isbn; public $title; function

Részletesebben

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás Számítástechnika II. BMEKOKAA153 2. Előadás Dr. Bécsi Tamás Véletlen számok generálása a Random osztály System.Random Metódus Típus Funkció Next() int Egy véletlen nem-negatív int értékkel tér vissza.

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 2. rész Öröklés és többalakúság Nemvirtuális metódusok, elrejtés Virtuális metódusok, elrejtés Típuskényszerítés, az is és as operátorok Absztrakt osztályok, absztrakt

Részletesebben

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1 Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

JAVA PROGRAMOZÁS 3.ELŐADÁS

JAVA PROGRAMOZÁS 3.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 3.ELŐADÁS 2014-2015 tavasz Polimorfizmus, absztrakt osztályok, interfészek 2 Példa - Hengerprogram 3 Példa - Hengerprogram 4 Példa - Hengerprogram

Részletesebben

Példaprogram - 2. Objektum-orientált programozás Java és C++ nyelven. Példaprogram. Azonosítók. Dr. Rohonczy János. Azonosítók

Példaprogram - 2. Objektum-orientált programozás Java és C++ nyelven. Példaprogram. Azonosítók. Dr. Rohonczy János. Azonosítók Példaprogram - 2 Dr. Rohonczy János Objektum-orientált programozás Java és C++ nyelven Java developer kit elérhetősége http://www.javasoft.com > javac Proba.java > java Proba 4 f = 24.0 ELTE, Általános

Részletesebben

Java VII. Polimorfizmus a Java nyelvben

Java VII. Polimorfizmus a Java nyelvben Java VII. Polimorfizmus a Java nyelvben Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 19. Java VII. Polimorfizmuss JAVA7 / 1 A kötés (binding( binding) ) fogalma Kötés (binding)

Részletesebben

JAVA PROGRAMOZÁS 2.ELŐADÁS

JAVA PROGRAMOZÁS 2.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 2.ELŐADÁS 2014-2015 tavasz Tömbök, osztályok, objektumok, konstruktorok Tömbök 2 Referencia típusú változó Elemtípus Primitív Referencia: osztály,

Részletesebben

Abstract osztályok és interface-ek. 7-dik gyakorlat

Abstract osztályok és interface-ek. 7-dik gyakorlat Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,

Részletesebben

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?

Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni? A "java Villa -v" parancs jelentése: A java interpreter elindítja a Villa osztály statikus main metódusát, és átadja neki paraméterként a "-v" stringet. A java interpreter elindítja először a Villa osztály

Részletesebben

Programozási nyelvek II.: JAVA, 11. gyakorlat

Programozási nyelvek II.: JAVA, 11. gyakorlat Programozási nyelvek II.: JAVA, 11. gyakorlat 2017. november 27-december 1. Programozási nyelvek II.: JAVA, 11. gyakorlat 1 / 54 A 11. gyakorlat tematikája Örökl dés Osztályhierarchia Az Object osztály

Részletesebben

JAVA SE/ME tanfolyam tematika

JAVA SE/ME tanfolyam tematika JAVA SE/ME tanfolyam tematika TANFOLYAM TEMATIKA: A JAVA MEGISMERÉSE Java története, miért készült, miért népszerű NETBEANS környezet telepítése, megismerése Programozási alapok java nyelven Változók,primitív

Részletesebben

Programozási alapismeretek 4.

Programozási alapismeretek 4. Programozási alapismeretek 4. Obejktum-Orientált Programozás Kis Balázs Bevezetés I. Az OO programozási szemlélet, egy merőben más szemlélet, az összes előző szemlélettel (strukturális, moduláris, stb.)

Részletesebben

OOP #14 (referencia-elv)

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

Részletesebben

Interfészek. PPT 2007/2008 tavasz.

Interfészek. PPT 2007/2008 tavasz. Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése 2 Már megismert fogalmak áttekintése Objektumorientált

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

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

Programozási környezetek

Programozási környezetek KOVÁSZNAI GERGELY ÉS BIRÓ CSABA EKF TTK Információtechnológia Tanszék Programozási környezetek Alkalmazható természettudományok oktatása a tudásalapú társadalomban TÁMOP-4.1.2.A/1-11/1-2011-0038 WPF Bevezetés

Részletesebben

A dokumentáció felépítése

A dokumentáció felépítése A dokumentáció felépítése Készítette: Keszthelyi Zsolt, 2010. szeptember A szoftver dokumentációját az itt megadott szakaszok szerint kell elkészíteni. A szoftvert az Egységesített Eljárás (Unified Process)

Részletesebben

VII. Appletek, grafika

VII. Appletek, grafika VII. Appletek, grafika 1. Bevezetés A tantárgy elején említettük, hogy a Java alkalmazásokat két nagy csoportba sorolhatjuk. Ezek: alkalmazások (applications) alkalmazáskák (applets) Az eddig megírt programjaink

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

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető

Részletesebben

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

Részletesebben

II. labor Az alábbi osztálydiagram (2.10 ábra) alapján hozzuk létre a diagramban feltüntetett csomagokat, interfészt és osztályokat.

II. labor Az alábbi osztálydiagram (2.10 ábra) alapján hozzuk létre a diagramban feltüntetett csomagokat, interfészt és osztályokat. I. labor 1. A Java fejlesztői csomag (JDK) letöltése és telepítése után töltsük le a megfelelő dokumentációt, és első feladataink megoldásával párhuzamosan tanulmányozzuk át annak szerkezetét, hogy a későbbiekben

Részletesebben

Programozás I. Első ZH segédlet

Programozás I. Első ZH segédlet Programozás I. Első ZH segédlet Ezen az oldalon: kiírás az alapértelmezett (hiba) kimenetre, sztring konkatenáció, primitív típusok, osztály létrehozás, példányosítás, adattagok, metódusok Kiíratás alapértelmezett

Részletesebben

A szerzõrõl... xi Bevezetés... xiii

A szerzõrõl... xi Bevezetés... xiii TARTALOMJEGYZÉK A szerzõrõl...................................................... xi Bevezetés...................................................... xiii I. rész A Visual Basic 2005 környezet 1. óra Irány

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Láthatósági szintek Névterek és hatókörök Osztály szintő tagok Beágyazott osztályok

Részletesebben

Egy csipetnyi Swing és egy leheletnyi JFreeChart

Egy csipetnyi Swing és egy leheletnyi JFreeChart Egy csipetnyi Swing és egy leheletnyi JFreeChart Hogyan készítsünk mutatós felhasználói felületet pillanatok alatt Javaban? Tippek és trükkök a platformfüggetlenség jegyében. Agrafikus alkalmazások a számítógéppel

Részletesebben

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. Programozás III CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van a fejlesztő környezet és az osztálykönyvtárak is: rt.jar fájl

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net. 2015 Bánsághi Anna 1 of 31

Bánsághi Anna anna.bansaghi@mamikon.net. 2015 Bánsághi Anna 1 of 31 ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 5. ELŐADÁS - ABLAKOK, ERŐFORRÁSOK 2015 Bánsághi Anna 1 of 31 TEMATIKA I. C# áttekintés II. WPF 2015 Bánsághi Anna 2 of 31 II. WPF 1.

Részletesebben

OOP és UML Áttekintés

OOP és UML Áttekintés OOP és UML Áttekintés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) OOP és UML Áttekintés 2013 1 / 32 Tartalom jegyzék 1 OOP Osztály Öröklődés Interfész, Absztrakt Osztály Kivétel kezelés

Részletesebben

Objektumorientált programozás Java-ban

Objektumorientált programozás Java-ban Objektumorientált programozás Java-ban Objektumorientált fejlesztés Klasszikus alapszakaszok: Elemzés (analízis) specifikáció, használati esetek (use case diagramok), domain analysis Tervezés (design)

Részletesebben

Informatika 1 CSS. Kovács Kristóf, Pálovics Róbert, Wettl Ferenc november 4. Budapesti M szaki Egyetem

Informatika 1 CSS. Kovács Kristóf, Pálovics Róbert, Wettl Ferenc november 4. Budapesti M szaki Egyetem Informatika 1 CSS Kovács Kristóf, Pálovics Róbert, Wettl Ferenc Budapesti M szaki Egyetem 2014. november 4. CSS CSS: Cascading Style Sheets CSS CSS: Cascading Style Sheets Cél: a tartalom és a megjelenítés

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Objektum-orientált szemlélet - Egységbe zárás (incapsulation) - Információ elrejtés - Öröklődés altípusosság dinamikus kötés Öröklődés Programozási nyelvek Java - kiterjesztem, kibővítem, megváltoztatom

Részletesebben

components : IContainer dx : int dy : int tmidőzítő : Timer toolstripseparator1 : ToolStripSeparator tsmikilépés : ToolStripMenuItem

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

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

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

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

7. Előadás Grafikus felhasználói felületek.

7. Előadás Grafikus felhasználói felületek. 7. Előadás Grafikus felhasználói felületek. Salamon Júlia Előadás I. éves mérnök hallgatók számára Felhasználói felületek készítése Parancs ablakból >>f=figure; >>set(f, Name, Ez a minta ablak ); >>set(f,

Részletesebben

Web-technológia PHP-vel

Web-technológia PHP-vel Web-technológia PHP-vel A PHP programnyelv 2, futtatókörnyezet beálĺıtások Erős Bence February 26, 2013 Erős Bence () Web-technológia PHP-vel February 26, 2013 1 / 19 Szuperglobális változók $ GET : request

Részletesebben

Programozás I. 5. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozás I. 5. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar Programozás I. 5. gyakorlat 1 Objektumorientáltság Egységbezárás és információ elrejtése (absztrakt adattípus) Adatok és rajtuk végzett műveletek egységbezárása (osztályok írása, múlt hét) Öröklődés Polimorfizmus

Részletesebben

VISUAL BASIC ALAPISMERETEK

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

Részletesebben

3. Egyszerű komponensek

3. Egyszerű komponensek 0.0.0.. Egyszerű komponensek - Forum - Forum.0 Wiki Dashboard» Forum»». Egyszerű komponensek. Egyszerű komponensek Egy egy Activity felületére tehetünk egy egy View t, amelyre a későbbiekben komponensként

Részletesebben

Bevezetés a programozásba II 1. gyakorlat. A grafikus könyvtár használata, alakzatok rajzolása

Bevezetés a programozásba II 1. gyakorlat. A grafikus könyvtár használata, alakzatok rajzolása Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba II 1. gyakorlat A grafikus könyvtár használata, alakzatok rajzolása 2014.02.10. Giachetta Roberto groberto@inf.elte.hu

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

Tamás Ferenc: CSS táblázatok 2.

Tamás Ferenc: CSS táblázatok 2. Tamás Ferenc: CSS táblázatok 2. Ez az írás azoknak készült, akik már értik a HTML és a CSS nyelveket, csak használat közben kellene egy adott tulajdonság vagy érték. Kérem, hogy senki se ezzel kezdje a

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 2. rész Öröklés és többalakúság Nemvirtuális metódusok, elrejtés Virtuális metódusok, elrejtés Típuskényszerítés, az is és as operátorok Absztrakt osztályok, absztrakt

Részletesebben

Virtuális függvények (late binding)

Virtuális függvények (late binding) Virtuális függvények (late binding) Miskolci Egyetem Általános Informatikai Tanszék Virtuális függvények CPP5 / 1 Azonos nevű függvények megkülönböztetése paraméterszignatúra (függvény overloading) - egy

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Névterek és hatókörök Láthatósági szintek Osztály szintő tagok Beágyazott osztályok

Részletesebben

Visual C++ 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.

Visual C++ 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. Visual C++ 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. Az osztály egy olyan típus leíró struktúra, amely tartalmaz adattagokat

Részletesebben

Overview. Service. Application Activity Activity 2 Activity 3. Fragment. Fragment. Fragment. Frag ment. Fragment. Broadcast Receiver

Overview. Service. Application Activity Activity 2 Activity 3. Fragment. Fragment. Fragment. Frag ment. Fragment. Broadcast Receiver ANDROID ALKALMAZÁSFEJLESZTÉS Android komponensek használata Activity Fragment Service Broadcast Recevier sicz- m e s z i a r. j a n o s @ n i k. u n i - o b u d a. h u Sicz-Mesziár János 2015. március

Részletesebben

Java és web programozás

Java és web programozás Budapesti M szaki Egyetem 2013. október 9. 5. El adás Interface-ek Korábban már említettem az interface-eket. Akkor úgy fogalmaztam, hogy valamilyen tulajdonságot adnak az osztályoknak. A lényegüket talán

Részletesebben

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010 Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 Előadás tematika 1. Pascal ismétlés, kiegészítések 2. Objektum orientált programozás (OOP) 3. Delphi környezet 4. Komponensek bemutatása

Részletesebben

libgdx alapok, első alkalmazás

libgdx alapok, első alkalmazás A libgdx letöltésének, telepítési lépéseinek bemutatása, projekt létrehozása, első libgdx alkalmazás elkészítése képernyőképekkel, magyarázatokkal. libgdx alapok, első alkalmazás Android játékfejlesztés

Részletesebben

Grafikai lehetőségek

Grafikai lehetőségek Vizuális és eseményvezérelt programozás 2006 2007, II. félév BMF NIK Grafikai lehetőségek System.Drawing névtér Graphics osztály Színek használata Vonalalapú alakzatok Pen osztály Rajzolási lehetőségek

Részletesebben

3. Gyakorlat Ismerkedés a Java nyelvvel

3. Gyakorlat Ismerkedés a Java nyelvvel 3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az

Részletesebben

Ugráló gomb oktatási segédlet Ugráló gomb

Ugráló gomb oktatási segédlet Ugráló gomb 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

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

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

Részletesebben