Wątek przeniesiony 2016-12-25 08:53 z Java przez bogdans.

Jak zrobić menu z pozycją "koniec", zamykającą program?

0

Muszę stworzyć, aplikację okienkową, w której w "menu" ma być przycisk "koniec", zamykający program, gdy na niego klikniemy. Nie mam pojęcia jak to zrobić.

Pozdrawiam, wesołych Świąt!

0

polecam tutorial CoraxTheTutor na YouTube po polsku.

0
public class PierwszaAplikacja extends Frame {
	
	String tekst = "";

	Font arial;
	{
		arial = new Font("Serif", Font.BOLD, 102);
	}

	public PierwszaAplikacja() {
		setSize(1000, 800);
		setVisible(true);
	}

	public void paint(Graphics gDC) {

		gDC.setFont(arial);

		gDC.drawString("1.Gra", 100, 150);
		gDC.drawString("2.Opcje", 100, 275);
		gDC.drawString("3.Najlepsze Wyniki", 100, 400);
		gDC.drawString("4.Instrukcje", 100, 525);
		gDC.drawString("5.Koniec", 100, 650);

	}
	
	public void init(){
		addMouseListener(new MyMouseListener());
		
	}
	
	class MyMouseListener implements MouseListener{
		public void mouseClicked(MouseEvent evt){
			int button = evt.getButton();
			int mx = evt.getX();
			int my = evt.getY();
			if (mx >=50 && mx <=150){
				if (my >=600 && my <= 700){
					System.exit(0);
				}
			}
		}
	}

		
			
		
	public static void main(String[] args) {
		new PierwszaAplikacja();
	}

}

Kompletnie nie ogarniam obsługi myszy :/

0

To co Ty robisz nie ma nic wspólnego z tworzeniem menu w okienku... próbujesz je napisać tekstem i..

  1. Klasa główna powinna dziedziczyć po JFrame a nie Frame
  2. Menu Tworzysz dodając komponenty takie jak: JMenu, JMenuItem, JMenuBar i inne
  3. jak chcesz rysować coś na danym komponencie to nie metoda paint tylko paintComponent.

Po co Ci obsługa myszki? aby obsłużyć zdarzenie kliknięcia na np. JButton, JMenu, JLabel czy inne komponenty potrzebujesz albo implementować interfejs ActionListener a następnie napisać metodę actionPerformed albo dodać ActionListener do danego komponentu np.

 JMenu menu = new JMenu("Plik");
        menu.addActionListener(e -> metodaObslugujaca());

naprawdę polecam obejrzyj sobie filmiki gościa co podałem w pierwszym poście a najlepiej zacznij od podstaw jacvy (on też ma tam parę filmów z podstaw) i dopiero pisz cokolwiek bo teraz to jest zbiór "tekstu" który miesza się i prawie nic nie robi.

1 użytkowników online, w tym zalogowanych: 0, gości: 1