Feste Position einer Komponente auf Glasspane

sicLotus

Bekanntes Mitglied
Hallo,

ich benutze ein Glasspane auf der ich einen JButton habe. Jetzt würde ich gerne explizit für diesen Button festlegen, das er an der Position x,y sein soll. Aber ich bekomm das beim besten Willen nicht hin.
Ich hab's mit setLocation und mit setBounds probiert.. es zeigt alles keine Wirkung..

Hier mal mein Code:
Java:
public class MyFrame extends JFrame {

	private static final long serialVersionUID = 1L;

	public MyFrame() {
		super("blabla");
		addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				System.exit(0);
			}
		});
	

		MyModel model = new MyModel();
		MyView view = new MyView(model);
		add(view);
		setSize(500, 200);
		pack();

		JButton testb = new JButton("test");
		testb.setOpaque(false);
		//testb.setLocation(500, 150);
		//testb.setBounds(50, 50, 100, 100);
		
		this.setGlassPane(testb);
		this.getGlassPane().setVisible(true);
		setResizable(false);
	}

	public static void main(String[] args) {
		try {
			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (InstantiationException e) {
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			e.printStackTrace();
		} catch (UnsupportedLookAndFeelException e) {
			e.printStackTrace();
		}
		MyFrame mf = new MyFrame();
		mf.setVisible(true);

	}

Geht das nicht? Sollte doch aber >.<
 

Michael...

Top Contributor
ich benutze ein Glasspane auf der ich einen JButton habe. Jetzt würde ich gerne explizit für diesen Button festlegen, das er an der Position x,y sein soll.
Feste Positionen sind eher unschön (Resize, unterschiedliche Auflösungen...) wenn's unbedingt sein muss: nimm das sogn. Null Layout, entferne also den LayoutManager der GlassPane, in dem Du darauf setLayout(null); aufrufst, damit wird auch die absolute Positionierung akzeptiert.
 

sicLotus

Bekanntes Mitglied
Also von der Glasspane direkt kann ich gar kein Layout ändern.. ich habs aber von der contentPane auf "null" gesetzt..

Weiterhin hab ich jetzt das Problem das ein zweiter Button hinzugekommen ist, und ich ja scheinbar nur über "setGlassPane();" eine Komponente hinzufügen kann, also hab ich da nen JPanel draus gemacht.
Aber wenn ich auf dem JPanel den LayoutManger null angegeben habe, seitdem sind die Buttons gar nicht mehr zu finden.. egal welche Location ich setze :/
 

Michael...

Top Contributor
Aus Neugierde: Was hast Du mit den Buttons auf der GlassPane vor? Warum?

Wenn sie nicht angezeigt werden, dann sind sie eventuell:
- nicht auf dem Panel "verbaut"
- werden auf einer andern Komponente verwendet
- falsch positioniert
 

sicLotus

Bekanntes Mitglied
Ich möchte die Buttons über einer Textarea an einer bestimmten Stelle positionieren.. normalerweise geht das ja auf ein und derselben Pane nicht (also 2 Komponenten an der selben Stelle) und deswegen wollte ich mit der Glasspane den Button halt explizit an diese Stelle setzen.. Das Gui selbst hab ich auf setResizable(false); gesetzt, damit sollte das Problem je geklärt sein oder?

Wie kann ich denn absolut sicher sein, dass meine Komponente 100% "sichtbar" positioniert ist. Wäre das mit setLocation(1,1) machbar?
 

Michael...

Top Contributor
Sollen die Buttons über dem Text sein? Mit JEditorPane sollte man auch Buttons in den Text einbetten können.

100%ige Sicherheit gibt's nirgens ;-) Grundlegend ist, dass die Komponenten auch tatsächtlich im Container enthalten sind.
 

slawaweis

Bekanntes Mitglied
Glasspane ist hier der falsche Ansatz. Man sollte Glasspane gar nicht anfassen, außer man weis genau was man macht. Für Überlagerungen ist JLayeredPane zuständig, welches auch in einem JFrame vorhanden ist. JLayeredPane kann Komponenten stapeln und hat eine Z-Index Angabe. Hier die Beschreibung:

How to Use Layered Panes (The Java™ Tutorials > Creating a GUI With JFC/Swing > Using Swing Components)

Doch in diesem Fall würde ich JXLayer empfehlen:

https://jxlayer.dev.java.net/

man kann es als Weiterentwicklung von JLayeredPane ansehen, wird in Java 7 standardmäßig enthalten sein. Damit kannst Du eine neue Komponente bauen, welche die JTextArea und deine Buttons enthält, unabhängig von einem JFrame.

Slawa
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P JPanel im BorderLayout feste Größe/Position zuordnen AWT, Swing, JavaFX & SWT 3
T jTable Colum feste position AWT, Swing, JavaFX & SWT 3
H Feste Positionen und Größen in JavaFX AWT, Swing, JavaFX & SWT 1
U feste Größe für den Zeichenbereich eines JFrames AWT, Swing, JavaFX & SWT 4
Ollek JTextArea - Feste Zeilenanzahl(8 Zeilen) AWT, Swing, JavaFX & SWT 3
F Im BorderLayout eine feste Grösse zuweisen! AWT, Swing, JavaFX & SWT 9
S JTable feste Zeilenanzahl?! AWT, Swing, JavaFX & SWT 4
S GridBagLayout - JTable zu groß - feste Zellengröße? AWT, Swing, JavaFX & SWT 2
T Feste Fenstergröße AWT, Swing, JavaFX & SWT 3
D JtoolBar feste Breite ? AWT, Swing, JavaFX & SWT 13
G JCombobox PopupMenu feste größe zuweisen AWT, Swing, JavaFX & SWT 3
G Feste Größe einer TextArea AWT, Swing, JavaFX & SWT 2
B Feste Breite einer JTextPane, die HTML anzeigt AWT, Swing, JavaFX & SWT 8
K BorderLayout--> feste Größe AWT, Swing, JavaFX & SWT 2
N Textfield feste größe? AWT, Swing, JavaFX & SWT 1
S Feste Breite und Höhe für einen formatierten Text. AWT, Swing, JavaFX & SWT 5
S JOptionPane und eine feste Zeilenbreite. AWT, Swing, JavaFX & SWT 4
B feste Zellgröße AWT, Swing, JavaFX & SWT 2
P JPanel und Co. feste breiten AWT, Swing, JavaFX & SWT 4
K Layout-Frage: 3 Feste Tabellen, 6-10dynamische AWT, Swing, JavaFX & SWT 2
N javafx Position der Bustaben finden label AWT, Swing, JavaFX & SWT 1
D JInternalFrame wechselt Position beim ersten Click AWT, Swing, JavaFX & SWT 0
S GUI Kreuz zeichnen und Position ausgeben AWT, Swing, JavaFX & SWT 3
C JavaFX Window-Position AWT, Swing, JavaFX & SWT 3
E JavaFX Cursor-Position im ScrollPane AWT, Swing, JavaFX & SWT 0
J BorderPane Position AWT, Swing, JavaFX & SWT 3
A Swing Fenster ändert Position bei Mausklick nicht AWT, Swing, JavaFX & SWT 2
A Swing JFrame neuzeichnen lassen, position neu berechnen lassen? AWT, Swing, JavaFX & SWT 9
F JavaFX Timeline Animation soll X- und Y-Position während Animation ändern AWT, Swing, JavaFX & SWT 2
F JavaFX Position von Image angeben/verändern AWT, Swing, JavaFX & SWT 2
F JScrollPane Position setzen (x=0, y=0) AWT, Swing, JavaFX & SWT 2
H Position eines JLabel in einem JPanel AWT, Swing, JavaFX & SWT 2
T SWT Wie kriege ich die Position des Textfeldes raus? AWT, Swing, JavaFX & SWT 19
C LayoutManager JFrame größe und ausrichtung + Position von Fensterelementen AWT, Swing, JavaFX & SWT 2
B Popup auf der Textcoursor-Position AWT, Swing, JavaFX & SWT 5
O Swing Spalten-Position nach verschieben AWT, Swing, JavaFX & SWT 6
0 Swing JTextField - Position ? AWT, Swing, JavaFX & SWT 2
E Swing Objekt zu Position (Point) bewegen AWT, Swing, JavaFX & SWT 2
C Label wird nicht an der richtigen Position angezeigt.. AWT, Swing, JavaFX & SWT 7
TheWhiteShadow Swing Document Text Position in Pixel AWT, Swing, JavaFX & SWT 2
M Jtable - wie position einer Celle bestimmen bei Multiselect AWT, Swing, JavaFX & SWT 4
B MessageBox Position Verändern AWT, Swing, JavaFX & SWT 8
B Swing Komponente an Position eines Objektes ausgeben lassen AWT, Swing, JavaFX & SWT 3
B Position in einem Bild ermitteln AWT, Swing, JavaFX & SWT 3
B [ERLEDIGT]gui problem(genaue position von buttons ect.) AWT, Swing, JavaFX & SWT 9
M Position eines JLabels mit getX() auslesen AWT, Swing, JavaFX & SWT 2
M Position eines JLabels speichern? AWT, Swing, JavaFX & SWT 3
D Swing PopupMenu immer an gewünschte Position? AWT, Swing, JavaFX & SWT 2
W Swing Bild zeichnen wenn Maus an bestimmter Position ist AWT, Swing, JavaFX & SWT 4
R Swing GlazedLists UND Problem mit der Position des Cursors AWT, Swing, JavaFX & SWT 2
M 3D-Grafik Probleme mit Position der ViewPlatform AWT, Swing, JavaFX & SWT 4
C Caret Position mit X-Y-Koordinaten ermitteln AWT, Swing, JavaFX & SWT 2
J Swing Problem - Abspeichern JSplitPane Position AWT, Swing, JavaFX & SWT 5
E Swing Runde Buttons / Position eines Obj. im Layout AWT, Swing, JavaFX & SWT 7
V Position der JScrollBar ändern AWT, Swing, JavaFX & SWT 5
T Z-Position der ViewPlatform? AWT, Swing, JavaFX & SWT 3
N Swing JTextArea/JScrollpane: JScrollbar position AWT, Swing, JavaFX & SWT 8
B aktuelle Position des Fensters ermitteln AWT, Swing, JavaFX & SWT 3
sylo Position des Icons bei JMenuItem AWT, Swing, JavaFX & SWT 11
H Y-Position mit get-/setLocation() unter Linux/Enlightement16 inkonsistent AWT, Swing, JavaFX & SWT 3
K JLayeredPane Elemente auf gleicher Position AWT, Swing, JavaFX & SWT 7
E Swing JLabel ändert seine Position nach setText AWT, Swing, JavaFX & SWT 2
G Absolute Position von Komponenten AWT, Swing, JavaFX & SWT 3
hdi SWT FileDialog wird an scheinbar beliebiger Position angezeigt AWT, Swing, JavaFX & SWT 2
K mehrere JTextFields - wie finde ich die Cursor-Position? AWT, Swing, JavaFX & SWT 5
lumo SWT Absolute position einer Composite/Control AWT, Swing, JavaFX & SWT 5
ElViZ End-Position eines gezeichneten Strings ermitteln. AWT, Swing, JavaFX & SWT 2
H Swing Illegal component position! AWT, Swing, JavaFX & SWT 2
Pithecanthropus Swing JScrollBar-Position festlegen.. AWT, Swing, JavaFX & SWT 3
K Postion Y im Frame != Position Y ?? AWT, Swing, JavaFX & SWT 16
R Position einer Componente? AWT, Swing, JavaFX & SWT 9
A Label hat falsche Position AWT, Swing, JavaFX & SWT 4
M Scrollbar anpassen (Position) AWT, Swing, JavaFX & SWT 6
M GridBagLayout - Position immer zentriert AWT, Swing, JavaFX & SWT 5
J absolute Position einer JComponent ermitteln AWT, Swing, JavaFX & SWT 4
J JSplitpane separator soll nicht seine Position veraendern? AWT, Swing, JavaFX & SWT 3
P JButton Position rausfinden beim GridBagLayout AWT, Swing, JavaFX & SWT 2
A erneutes Öffnen jInternalFrame: illegal component position AWT, Swing, JavaFX & SWT 4
X Dynamische linien (Position und Länge) AWT, Swing, JavaFX & SWT 4
G position im FlowLayout AWT, Swing, JavaFX & SWT 11
B Thumbnail-Position per Mausklick ändern AWT, Swing, JavaFX & SWT 3
& Position eines Fensters nicht verändern AWT, Swing, JavaFX & SWT 8
A Position des Fensters verändern AWT, Swing, JavaFX & SWT 21
U JTable Position der Spalte abfragen AWT, Swing, JavaFX & SWT 7
D JInternalFrame iconified Position nach parent-resize AWT, Swing, JavaFX & SWT 2
U Problem mit JButton (Position & Größe) AWT, Swing, JavaFX & SWT 7
W Schnappen der Größe und Position AWT, Swing, JavaFX & SWT 7
S Falsche Position, Elemente erscheinen nicht, Flackern AWT, Swing, JavaFX & SWT 6
S Position eines Fensters festlegen AWT, Swing, JavaFX & SWT 2
L Menu Position verändern? AWT, Swing, JavaFX & SWT 24
T jTable / Spaltenbreite und Position AWT, Swing, JavaFX & SWT 2
J InternalFrames Grösse Position AWT, Swing, JavaFX & SWT 3
vogella JScrollPane - Position setzen der Scrollbalken AWT, Swing, JavaFX & SWT 5
M JPanel Position tut nicht, was sie soll AWT, Swing, JavaFX & SWT 8
S Position von Labels, Buttons, etc. festsetzen und Scrollen AWT, Swing, JavaFX & SWT 4
M GridBagLayout - Component Position AWT, Swing, JavaFX & SWT 4
B Setzen von Position > 90 bei JScrollbar nicht möglich AWT, Swing, JavaFX & SWT 3
M Position im JTree veraendern AWT, Swing, JavaFX & SWT 3
A Position im Text bei Rechtsklick AWT, Swing, JavaFX & SWT 7
T JScrollPane Scrollbar-Position AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben