Border nimmt Platz

Kenan89

Bekanntes Mitglied
Hallo,

ich habe mir ein Menü gebaut, bestehend aus aneinander gereihten JButtons, die weder Rahmen, noch Hintergrundfarbe besitzen. Alle diese JButtons besitzen einen MouseListener, sodass, wenn man drüberfährt, sie einen Rahmen erhalten und beim verlassen, der Rahmen wieder verschwindet.

Das Problem ist, dass sich das JPanel, welches sich unter dem Menüpanel befindet mit ein wenig nach unten verschiebt, eben aufgrund des Rahmens. Wie kann ich das umgehen?
 
S

SlaterB

Gast
die Zeit des 'keinen Rahmens' durch eine Art unsichtbaren Rahmen ersetzen, was sicher die nächste(n) Frage(n) aufwirft
 

bERt0r

Top Contributor
Also wenn du Menü sagst, denke ich an "Datei, Bearbeiten, Ansicht, Hilfe,..." Das sind in java aber keine Buttons sonder JMenu/JMenuBar/JMenuItems (darum heißen die auch so). Vielleicht sagt hier ein Screenshot mehr als tausend Worte?
 

Kenan89

Bekanntes Mitglied
Wie genau kann man einen unsichtbaren Rahmen setzen?

Java:
createLineBorder(Color.TRANSLUCENT);
aber irgendwie muss ja ein int-Wert für translucent
 

Kenan89

Bekanntes Mitglied
habe auch aktuell createEmptyBorder im Code.

Ich zeige mal am besten Code und ein Screenshot was ich meine.



Diese Icons sind jeweils JButtons, mit den Eigenschaften(Beispiel für das Hilfe-Icon(mit dem i im blauen kreis)):

Java:
		hilfe.setBorder(BorderFactory.createEmptyBorder());
		hilfe.setContentAreaFilled(false);

MouseListener arbeitet so:
Java:
	public void mouseEntered(MouseEvent e) {
		obj = e.getSource();

		if(obj.equals(fenster.getIconmenue().getMenuItemHilfe())){
			fenster.getIconmenue().mouseHilfe();
	}
	public void mouseExited(MouseEvent e) {
		obj = e.getSource();

		if(obj.equals(fenster.getIconmenue().getMenuItemHilfe())){
			fenster.getIconmenue().mouseHilfe();
	}

Java:
	public void mouseHilfe(){
		if(mouseOver){
			hilfe.setBorder(BorderFactory.createEmptyBorder());
			mouseOver = false;
		}
		else{
			hilfe.setBorder(BorderFactory.createLineBorder(Color.GRAY));
			mouseOver = true;
			
		}	
	}
 

Kenan89

Bekanntes Mitglied
Hmm. Ich sage zwar emptyBorder, trotzdem kriegt aber der erste einen grauen Rahmen?
Java:
	private void buttonRahmenEntfernen(){
		neu.setBorder(BorderFactory.createEmptyBorder(1,1,1,1));//Der hat einen Rahmen????
		neu.setContentAreaFilled(false);
		
		laden.setBorder(BorderFactory.createEmptyBorder(1,1,1,1));
		laden.setContentAreaFilled(false);
		
		speichern.setBorder(BorderFactory.createEmptyBorder(1,1,1,1));
		speichern.setContentAreaFilled(false);
		
		entfernen.setBorder(BorderFactory.createEmptyBorder(1,1,1,1));
		entfernen.setContentAreaFilled(false);
		
		hilfe.setBorder(BorderFactory.createEmptyBorder(1,1,1,1));
		hilfe.setContentAreaFilled(false);
	}

Wenn ich aber die 1,1,1,1 weg nehme und da nur steht "createEmptyBorder()", dann verschwindet es zwar, fährt man aber dann wieder mit der Maus, erscheint ein Rahmen(meine Funktion fügt ja einen hinzu), verschwindet aber dann nicht mehr, obwohl meine Funktion bei mouseExited den Wert auf emptyBorder setzt...

EDIT: Ausserdem:
Java blendet ja in meiner Funktion einen grauen Rahmen um die Icons.. Kann ich den Abstand des Icons vom Rahmen ändern? setMargin klappt leider nicht, die Rahmen haben sich nicht vom icon entfernt.
 
Zuletzt bearbeitet:

Kenan89

Bekanntes Mitglied


Der Grund wieso da ein kleiner Rahmen um das erste Button ist, ist, dass Java beim Auswählen eines Buttons es automatisch mit so einem kleinen Rahmen ausstattet. Wie kann ich den unterbinden?
 

Kenan89

Bekanntes Mitglied
Das Problem hat sich gelöst. Das nächste ist, wie ich in einem JTextArea Text Unterstreichen kann?=
Generell habe ich momentan das Problem, das ich den Text zwar fett, kursiv einstellen kann, dann aber der gesamte TextArea davon betroffen ist. Ich will aber nur die Selektion, oder die darauf folgenden Buchstaben feett, odeer kursiv haben..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K JavaFX CSS Border (Verschiebung verhindern) AWT, Swing, JavaFX & SWT 4
MiMa GUI Controller für Border Pane als MVC Modell AWT, Swing, JavaFX & SWT 1
MaxG. JavaFX JavaFX Border zuweisen AWT, Swing, JavaFX & SWT 8
G Border der Komponente bei Table CellRenderer überschreiben AWT, Swing, JavaFX & SWT 0
S Rectangle Border Color AWT, Swing, JavaFX & SWT 13
J JFrame border AWT, Swing, JavaFX & SWT 2
V Swing JButton ohne Border bei Anklicken AWT, Swing, JavaFX & SWT 3
C Border in JPanel erstellen AWT, Swing, JavaFX & SWT 4
eskimo328 Dashed Border in JRE 7 funktioniert nicht AWT, Swing, JavaFX & SWT 3
L Border verschwindet durch Graphics.drawImage() AWT, Swing, JavaFX & SWT 4
B Border anzeigen/nicht anzeigen AWT, Swing, JavaFX & SWT 6
G Swing JTabbedPane Was für ein Border wird da um die Tabs gezeichnet? AWT, Swing, JavaFX & SWT 6
G Etched Border nur an einer Seite einfügen AWT, Swing, JavaFX & SWT 16
P Swing Größe eines JPanels bestimmen (ohne Border!) AWT, Swing, JavaFX & SWT 2
F Swing UI Problem mit Zeichnen der Tab-Border AWT, Swing, JavaFX & SWT 2
N JButton Border(null) AWT, Swing, JavaFX & SWT 3
A SWT - group - border color? AWT, Swing, JavaFX & SWT 4
S Border von JTabbedpane-Tab? AWT, Swing, JavaFX & SWT 3
K SWT Titeld Border AWT, Swing, JavaFX & SWT 3
H JList: Selection-Border entfernen AWT, Swing, JavaFX & SWT 2
Streeber Menüpunkt - Border/Strich AWT, Swing, JavaFX & SWT 2
A Titled Border nur oben? AWT, Swing, JavaFX & SWT 3
A Eigene Border für Buttons AWT, Swing, JavaFX & SWT 19
T Font mit Border AWT, Swing, JavaFX & SWT 7
T Border eines Panels nicht an der rechten Kante anzeigen AWT, Swing, JavaFX & SWT 7
T paintComponent() überschreiben: Platz für Border freihalten? AWT, Swing, JavaFX & SWT 6
C menubar border AWT, Swing, JavaFX & SWT 2
X Einzelne Border setzen AWT, Swing, JavaFX & SWT 2
J Border bei JSplitPane entfernen? AWT, Swing, JavaFX & SWT 2
K Border von JTextField AWT, Swing, JavaFX & SWT 1
M JWindow mit Rahmen(border) ausstatten AWT, Swing, JavaFX & SWT 4
G JPanel und Border AWT, Swing, JavaFX & SWT 16
C SWT Composite Border im Nachhinein setzen AWT, Swing, JavaFX & SWT 1
M Border in ToolTip AWT, Swing, JavaFX & SWT 5
E JButton und Border AWT, Swing, JavaFX & SWT 6
J Border im Header bei JTable verändern AWT, Swing, JavaFX & SWT 3
Z Border um ein JPanel AWT, Swing, JavaFX & SWT 3
W Probleme mit Border- und null-Layout AWT, Swing, JavaFX & SWT 8
P thread nimmt veränderte boolean nicht AWT, Swing, JavaFX & SWT 7
S Swing JPanel nimmt keinen KeyListener an AWT, Swing, JavaFX & SWT 7
TheWhiteShadow JavaFX ScrollPane nimmt nicht genug platz ein AWT, Swing, JavaFX & SWT 3
B AWT GUI nimmt nur 19 Ziffern an, obwohl Max Wert von Double größer ist AWT, Swing, JavaFX & SWT 7
T ActionListener nimmt JTextField nicht mehr an. AWT, Swing, JavaFX & SWT 2
Seikuassi Swing JTextField nimmt kein Einfügen (Strg+V) an AWT, Swing, JavaFX & SWT 4
C Swing JFrame nimmt keine anderen Elemente auf AWT, Swing, JavaFX & SWT 13
F Swing timer nimmt delay nicht an AWT, Swing, JavaFX & SWT 2
Knizz Button nimmt komplettes Fenster ein AWT, Swing, JavaFX & SWT 10
V JTextField nimmt keine Eingaben an, nach nachträglichem setVisible des JWindows AWT, Swing, JavaFX & SWT 4
J Swing JScrollPane nimmt das JPanel zum Zeichnen nicht an AWT, Swing, JavaFX & SWT 5
S JTable nimmt TableModel nicht an AWT, Swing, JavaFX & SWT 4
J ActionListener nimmt keine for()-Schleife? AWT, Swing, JavaFX & SWT 4
M JList nimmt keine Selektierung mehr an AWT, Swing, JavaFX & SWT 7
G JComboBox nimmt Auswahl nicht an AWT, Swing, JavaFX & SWT 5
L JavaFX Anderer Text, wenn kein Platz ist. AWT, Swing, JavaFX & SWT 1
R Swing JPanels auf JFrame auf verfügbaren Platz aufblasen AWT, Swing, JavaFX & SWT 4
GenerationLost Bilder an bestimmten Platz einfügen/Objekte visualisieren AWT, Swing, JavaFX & SWT 1
I Swing JLabel - Platz schaffen AWT, Swing, JavaFX & SWT 10
L LayoutManager Componenten über verfügbaren Platz strecken AWT, Swing, JavaFX & SWT 7
R Swing Ausnutzung von vorhandenem Platz AWT, Swing, JavaFX & SWT 13
F LayoutManager GridBagLayout nutzt Platz nicht AWT, Swing, JavaFX & SWT 2
T Layoutmanager der vorhanden Platz beruecksichtigt? AWT, Swing, JavaFX & SWT 5
T GridLayout, zu wenig Platz zwischen Widgets AWT, Swing, JavaFX & SWT 3
R das letzte JLabel in der Schleife will nicht an seinen Platz AWT, Swing, JavaFX & SWT 2
F Benötigter Platz von Komponenten AWT, Swing, JavaFX & SWT 3
J Schriftgröße aus vorhandenem Platz berechnen AWT, Swing, JavaFX & SWT 9
K JFreeChart: Platz zwischen Balken AWT, Swing, JavaFX & SWT 3
M zur Verfügung stehenden Platz ausfüllen AWT, Swing, JavaFX & SWT 5
Z bei kleinen Buttons verschwindet Schrift, obwohl Platz wäre AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben