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

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

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

B2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
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!

R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 208
0

polecam tutorial CoraxTheTutor na YouTube po polsku.

B2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0
Kopiuj
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 :/

R1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 208
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.

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

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.