• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Java dodanie JMenu do programu

Object Storage Arubacloud
0 głosów
66 wizyt
pytanie zadane 13 kwietnia 2019 w Java przez Mariusz M Obywatel (1,640 p.)

//ConvexHull.java

package convexHull1;

import java.awt.Canvas;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.swing.JFrame;

public class ConvexHull extends Canvas implements MouseListener{
	private static int countA;
	private static int countB;
	private static ArrayList<Point> A = new ArrayList<Point>();
	private static ArrayList<Point> B = new ArrayList<Point>();
	private static Graphics gDC;
	public ConvexHull() {
		// TODO Auto-generated constructor stub
		countA = 0;
		countB = 0;
		addMouseListener((MouseListener) this);
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		JFrame jf = new JFrame("Convex Hull");
		ConvexHull convexHull = new ConvexHull();
		jf.setSize(800, 600);
		jf.setVisible(true);
		jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		jf.add(convexHull);
	}

	public void paint(Graphics gDC)
	{
		PrintWriter out;
		String str = new String();
		try {
			out = new PrintWriter(new BufferedWriter(new FileWriter("hulloutput.txt",true)));
		str = "";
		for(int i = 0;i < countA;i++)
		{
			gDC.fillOval(A.get(i).getX()-5, A.get(i).getY()-5, 10, 10);
			str += A.get(i).toString() + " ";
		}
		out.println("All points");
		out.println(str);
		out.println("Points on the hull");
		str = "";
		for(int i = 0;i < countB;i++)
		{
			gDC.drawLine(B.get(i).getX(),B.get(i).getY(), B.get((i+1)%countB).getX(),B.get((i+1)%countB).getY());
			System.out.println(B.get(i).getX() + " "+ B.get(i).getY());
			str += B.get(i).toString() + " ";
		}
		out.println(str);
		System.out.println();
		out.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	@Override
	public void mouseClicked(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mousePressed(MouseEvent e) {
		// TODO Auto-generated method stub
		int x = e.getX();
		int y = e.getY();
		Point point = new Point(x,y);
		A.add(point);
		countA++;
		while(!B.isEmpty())
			B.remove(B.get(0));
		//Jarvis.Solve(A, B);
		//Graham.Solve(A, B);
		//QuickHull.Solve(A,B);
		countB = B.size();
		repaint();
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

}





Jak dopisać do tego programu JMenu a następnie reakcję na zdarzenia

takie jak zapis danych do pliku , wybór algorytmu itp

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 326 wizyt
pytanie zadane 15 kwietnia 2017 w Java przez mortem Nowicjusz (240 p.)
0 głosów
1 odpowiedź 259 wizyt
pytanie zadane 27 kwietnia 2019 w Java przez matrix1395 Nowicjusz (190 p.)
0 głosów
2 odpowiedzi 934 wizyt
pytanie zadane 3 listopada 2018 w Java przez PiotrSQ Nowicjusz (210 p.)

92,556 zapytań

141,404 odpowiedzi

319,560 komentarzy

61,942 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...