Was in Swing, was in AWT zeichnen & Textfeld formatierba

Status
Nicht offen für weitere Antworten.

Igäl

Mitglied
Hi Leute, ich schonwieder

Hab nun weitere Fragen. Ist es möglich, AWT und Swing zu mischen? Wenn ja, wie bringe ich eine einfache Linie (drawLine()) in ein JFrame, welches noch nicht einmal in der Methode aufgerufen wird, in der ich die Linie zeichne?

Der Code ist Folgender:
Code:
/*Main.java*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Main {
	/**
	 * @author - Thomas Meili 2007-07-25
	 * Last Edited: 2007-07-26
	 */

	public static void main(String[] args) {
		/*Neues JFrame & Neue Instanz der ContentControl-Klasse*/
		JFrame mf = new JFrame("Wall Street - Hauptmenü");
		ContentControl conCtrl = new ContentControl();
		
		/*Neues JPanel & Layout des JPanel auf BorderLayout setzen*/
		JPanel mainPan = new JPanel();
		mainPan.setLayout(new BorderLayout());
		
		/*Navigation anfordern und darstellen*/
		mainPan.add(conCtrl.getTopPan(), BorderLayout.NORTH);
		mainPan.add(conCtrl.getMidPan(), BorderLayout.CENTER);
		
		/*Daten werden zugewiesen und ausgegeben*/
		mf.add(mainPan, BorderLayout.PAGE_START);
		mf.addWindowListener(new CloseWindow(true));
		mf.setSize(800, 600);
		mf.setVisible(true);
	}

}
Code:
/*ContentControl.java*/

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class ContentControl	{
	public JPanel getTopPan()	{
		JPanel topPan = new JPanel();
		topPan.setLayout(new BoxLayout(topPan, BoxLayout.X_AXIS));
		topPan.add(createButton("Übersicht", 400, 30));
		topPan.add(createButton("Getränke", 400, 30));
		
		return topPan;
	}
	
	public JPanel getMidPan()	{
		JPanel midPan = new JPanel();
		midPan.setLayout(new BoxLayout(midPan, BoxLayout.X_AXIS));
		//drawLine(0, 0, 100, 100); Hier möchte ich gerne eine Linie einfügen
		return midPan;
	}
	
	private JButton createButton(String label, int sizeX, int sizeY)	{
		JButton btn = new JButton(label);
		btn.setPreferredSize(new Dimension(sizeX, sizeY));
		
		return btn;
	}
}

Die Zweite Frage geht um die Darstellung des Contents.
Wenn der Button Überblick aktiv ist, dann soll unter der Navigation Content erscheinen. Nun: Muss ich dafür ein Textfeld generieren, in welchem der Content angezeigt wird oder kann ich das auf diese Ebene machen, die zur Zeit noch brach liegt? Namentlich kommen dann da ein paar Statistikdaten sowie eine Grafik hin, die einen Börsenkurs zeigt. Ist das mit der jetztigen Struktur möglich?

Gruss Igäl
 
> Wenn ja, wie bringe ich eine einfache Linie (drawLine()) in ein JFrame, welches noch nicht einmal in der Methode aufgerufen wird, in der ich die Linie zeichne?

wenn das JFrame nicht da ist, dann kannst du es nicht bearbeiten,
Java zaubert nicht 😉

ansonsten:
myFrame.rememberToDrawLineSoon(..);
myFrame.repaint();

und in der paint/paintComponent-Operation dann die Linie malen
 
Ich hab jetzt eine Funktion paint gemacht. Doch ist mir nicht klar, wie ich diese Linie ins JPanel reinbekomme, damit sie dann im JFrame angezeigt wird.
 
oh, sorry, du bists, also von mir leider keine weitere Hilfe mehr,
lies 4 Wochen Tutorials, dann weist du etwas mehr
(ist jetzt vielleicht bisschen gemein bei all den leichten Fragen heute, nicht alle von dir,
jemand anders hilft vielleicht weiter 😉 )
 
Ich arbeite daneben bereits mit einem Haufen Tuts. Doch einige Dinge sind einfach so proprietär, dass ich dafür keinen Festgeschriebenen Ansatz finden kann. Natürlich könnte ich verschiedene Ansätze kombinieren, doch fehlt mir dazu leider das Knowhow... Und um das Knowhow zu bekommen, muss ich programmieren... Nur gibt es da auch ab und zu wieder Stolpersteine, die ich nicht alleine lösen kann --> Teufelskreis. Programmieren ist nunmal nichts, was man aus der Theorie lernen kann. Um Programmieren zu lernen, muss man programmieren.

Aber tnx anyway.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben