JFrame

Programovacie jazyky, rady, poradňa...
Stephanides
Amateur
Amateur
Príspevky: 13
Registrovaný: 14 okt 2012, 8:18

JFrame

Príspevok od používateľa Stephanides »

Čawte, ako pridám na výstup vo Frame nejaký text ? napr ako v konzole System.out.println
Pripajam zdrojový kod

Kód: Vybrať všetko

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Vykreslovac {

	private static final String PATH = "asdf.txt";
	private JFrame f;
	private MyPanel p;
	
	public Vykreslovac(){
		f = new JFrame("Vykreslovac");
		f.setSize(700, 700);
		f.setLocationRelativeTo(null);
		p = new MyPanel();
		f.add(p);
		f.setVisible(true);
		p.init();
		
		
	}
	
	public static void main(String[] args) {
		new Vykreslovac();
	}
	
	class MyPanel extends JPanel{
		
		private static final long serialVersionUID = 1L;
		private Color[] farby = {Color.gray, Color.blue, Color.green, Color.orange, Color.yellow};
		private Image i;
		private int oldX = 0, oldY = 0, newX, newY;
		
		public MyPanel(){
		}
		
		public void init(){
			i = createImage(getWidth(), getHeight());
			Graphics2D g = (Graphics2D) i.getGraphics();
			g.setColor(Color.white);
			g.fillRect(0, 0, getWidth(), getHeight());
			vykreslovanieObrazku(g);
			repaint();
			
		}
		
		private void vykreslovanieObrazku(Graphics2D g){
			g.translate(100, 100);
			try {
				BufferedReader br = new BufferedReader(new FileReader(PATH));
				String line;
				while((line = br.readLine()) !=null){
					if(line.trim().length() != 0){
						String[] params = line.split("\t");
						g.setColor(farby[Integer.parseInt(params[3])]);
						newX = (int) (Float.parseFloat(params[0])*900);
						newY = (int) (Float.parseFloat(params[2])*20000);
						g.drawLine(oldX, oldY, newX, newY);
						oldX = newX;
						oldY = newY;
					}
				}
				br.close();
			}
			catch(FileNotFoundException e) {
				e.printStackTrace();
			}
			catch(IOException e) {
				e.printStackTrace();
			}
		}
		
		@Override
		protected void paintComponent(Graphics g) {
			super.paintComponent(g);
			g.drawImage(i, 0, 0, null);
		}
		
	}
}

chcel by som po vykreslení toho obrázku ešte nad ním vypísať jednu súradnicu ktorú si načítam z toho istého súboru, ale to už vyrieším iba by som chcel vedieť ako to funguje vypís na Jframe
Napísať odpoveď