Tooltipproblem



  • Hallo, Ich versuch ersteinmal zu beschreiben, was ich gemacht habe.
    Ich habe ein Frame angelegt, auf den ich einen Panel gelegt habe, auf diesen, habe ich wieder einen Panel gelegt und darauf habe ich JButtons gelegt, die Buttons werden wunderbar angezeigt, der passende Tooltip allerdings nicht.Dieser liegt unter dem zweiten Panel. Ich habe bei den ganzen Panels übrigens den Layoutmanager ausgeschaltet, um die Elemente selber anzuordnen. Hat irgendjemand schon die selbe Erfahrung damit gemacht? Ich finde es auf jedenfall sehr komisch den selbst mit eingeschaltetem Layoutmanager tritt das gleiche auf. 🙄



  • Du redest von den Tooltips der Buttons?



  • Ja genau die Tooltips der Buttons erscheinen nur in in dem Teil, in dem der zweite Panel nicht ist. Der Tooltip wird dort einfach abgeschnitten.
    T steht für Tooltip
    N Tooltip wird nicht angezeigt
    _________________
    *******Panel 1********|
    ___________ |
    ****Panel2****|
    |
    *********||
    ***Button******|*****|
    *******NNNNN|TTT**|



  • Habe mal ein Beispielprogramm geschrieben um das nachzuvollziehen ... wie das Bild zeigt, konnte ich dein Problem nicht nachvollziehen (Java 5.0)

    import javax.swing.*;
    
    public class ToolTipDemo extends JFrame {
    	private JButton btn1 = new JButton("Button 1");
    	private JButton btn2 = new JButton("Button 2");
    	JPanel panel1 = new JPanel();
    	JPanel panel2 = new JPanel();
    
    	public ToolTipDemo() {
    		super("ToolTipDemo");
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    
    		btn1.setToolTipText("Dies ist ein überlanger Tooltip1");
    		btn2.setToolTipText("Dies ist ein überlanger Tooltip2");
    		panel2.setSize(new java.awt.Dimension(200, 100));
    		panel2.setLocation(10, 10);
    		panel2.add(btn1);
    		panel2.add(btn2);
    		panel1.setBackground(java.awt.Color.yellow);
    		panel2.setBackground(java.awt.Color.blue);
    		panel1.setLayout(null);
    		getContentPane().setLayout(null);
    		panel1.setSize(new java.awt.Dimension(400, 200));
    		panel1.setLocation(10, 10);
    		panel1.add(panel2);
    
    		this.getContentPane().add(panel1);
    		setVisible(true);
    	}
    
    	public static void main (String args[]) {
    		new ToolTipDemo();
    	}
    }
    

    Obiger Code erzeugt dieses Fenster: www.javacore.de/public/tooltip.gif



  • Das hoert sich ganz nach einem AWT-Swing Problem an: ein Panel(AWT) darf nicht mit einem JButton(Swing) und seinem JTooltip(Swing) kombiniert werden, denn das Panel(AWT) ist "schwerer" als das Swing-Zuegs.

    Verwende einfach JPanel anstelle von Panel.

    siehe auch...



  • Hallo ich danke ersteinmal für die Anregungen. Sobald ich mein Problem gelöst habe, schreibe ich euch noch mal.
    Aber ersteinmal danke 🙂



  • Es tut mir schrecklich leid,aber beim ableiten einer Klasse habe ich wirklich das Panel statt dem JPanel genommen, aber dass dies so eine große Auswirkung hat, hätte ich nicht gedacht. Naja man lernt nie aus.
    Noch mal vielen Dank für die Hilfe und den Link, ist sehr Interessant.


Anmelden zum Antworten