Popup Deluxe (Transparentes Popup)!

Status
Nicht offen für weitere Antworten.

KS

Aktives Mitglied
Ein fröhliches Hallo an alle interessierten! :D

Ich möchte ein, so scheint es mir, visuelles Wunderwerk vollbringen! So siehts aus:

1. Wenn ich über ein Komponenten mit der Maus fahre, soll ein mehrzeiliges Popup/ToolTip Fenster erscheinen welches,
2. sich mit der Maus über dem Komponenten bewegt (natürlich ohne flackern) , bis die Maus den Komponenten verlässt und
3. währenddessen transparent ist!

Das ganze soll mir dazu dienen, informationen über Komponente anzuzeigen!

Ich hab mir mal Gedanken dazu gemacht, aber habe weder bei JPopup noch bei ToolTip befriedigung gefunden. Gibt es da noch andere geeignete Klassen oder muss ich hier nen Kopfstand machen?

Danke auch für Gedankenanstösse !!

Es Grüsst freundlich
Chris
 
B

Beni

Gast
Mehrzeilig: HTML verwenden

Du kannst getToolTipText( MouseEvent ) überschreiben um für verschiedene Regionen einer Component verschiedene Tooltips anzeigen zu lassen. Wenn sich die Maus von einer Region in die andere bewegt, wird der Tooltip automatisch folgen. Ist nicht ganz das Verhalten dass du beschrieben hast, aber zumindest ähnlich.
 

freez

Top Contributor
Ich sehe es auch so wie campino ... ein Panel neben der Maus einblenden, welches nicht bestandteil deines Frames ist. Naja, das ist ne Idee, aber ob die so ohne weiteres realisierbar ist, kann ich nicht sagen. Und ob das ganze dann auch noch ruckelfrei läuft.

Ich könnte mir vorstellen, daß ein Thread vom Frame die Mausbewegung überwacht, und dann dieses neue Fenster dann neben der Maus positioniert. Vielleicht lässt sich das auch zusätzlich mit den Mausevent kombinieren. So in der Art, daß das Mausevent einer Komponente dem Thread sagt, daß die Maus jetzt in der Komponente ist, und wann sie wieder draussen ist. Somit könntest du deine Komponenten unterscheiden.
 

freez

Top Contributor
Ein kleiner Denkanstoß: Bitte denke auch daran, daß dein Fenster evtl wichtige informationen verdeckt. Mich kotzt nix mehr an, wenn so eine Hilfe aufpoppt, welche ich schon hundert mal gesehen habe, und nimmer weg geht. Naja, man kann ja schlecht hinter den Hilfetext schauen (obwohl manche meinen, sie könnten es, wenn man dann ihre Kopfbewegung beobachtet :))
 

KS

Aktives Mitglied
ich habs geschafft! ich habe ein der maus folgendes popupmenu! transparent! OHNE FLACKERN!

aber ich hab ein anderes Problem.

Ich habe mir zusätzlich noch ein ähnliches popup gemacht. diese hat aber SLIDERs drauf. wenn ich nun an einem slider nörgele, dann hinterlässt dieser flecken im transparenten popup. wähh

???:L

Nun, beim hin und her probieren kam ich darauf, dass die Fuktion setLocation() von Popup das ganze Popup schön anzeigt! Nun bewege ich, immer wenn ich den Mauszeiger vom SLIDER löse, das Fenster immer um ein Pixel hin und und beim nächsten Mausevent wieder zurück (NUR DATIM DAS GANZE SCHÖN AUSSIEHT!!

aber das kann es wohl nicht sein. alles was ich mit repaint(), revalidate(), super.paintComponent... versucht habe ging schief. ich brings nicht dazu schön auszusehen! kotz

PS Hier der Code, welcher ein tolles Popup generiert (Transparent, Maus-folgend)

Code:
private JPopupMenu popup = new JPopupMenu();

popup.setLabel("Info zur Buchung");	
			popup.setFocusable(false);
			taInfo = new JTextArea(" Buchung Nr.\t: " + rs.getString(1) + "\n " +
					   " Name         \t: " + rs.getString(2) + " " + rs.getString(3) + "\n " +
					   " Datum        \t: " + rs.getString(4) + " bis " + rs.getString(5) + "\n " +
					   " Anzahl Zimmer\t: " + rs.getString(6) + "\n " +
					   " Buchungstext \t: " + rs.getString(7) + "\n " +
			 		   " Gebucht von  \t: " + rs.getString(8) + " (" + rs.getString(9) + ")");
			
			taInfo.setBorder(null);
			taInfo.setFocusable(false);
			taInfo.setBackground(new Color(230,230,230,0));
			//taInfo.setForeground(new Color(0,0,0,0));
			popup.add(taInfo);
			popup.setBorder(BorderFactory.createEtchedBorder(new Color(145,20,190),new Color(0,0,0,150)));
			popup.setBackground(new Color(230,230,230,200));
			Point p = getPopupLocation(arg0.getComponent().getLocationOnScreen().x + arg0.getX(),arg0.getComponent().getLocationOnScreen().y + arg0.getY());
			popup.show(arg0.getComponent(),p.x - arg0.getComponent().getLocationOnScreen().x,p.y - arg0.getComponent().getLocationOnScreen().y);

kombiniert mit dem mouseMotionListiener:

Code:
public void mouseMoved(MouseEvent e) {
		int x = e.getComponent().getLocationOnScreen().x + e.getX();
		int y = e.getComponent().getLocationOnScreen().y + e.getY();
		popup.setLocation(getPopupLocation(x,y));
	}

//getPopupLocation ist eine Funktion, welche verhindert, dass das popup einen gwünschten Bereich nicht überlappt

und so sieht das ganze aus (der mauszeiger konnte ich irgendwie mit screenshot nicht erwischen):

oqeykm.jpg


das popup ist erstklassig! folgt immer dem Mauszeiger, wenn es über ein Zeitfeld kommt!

Aber schon mal danke, für tips mit meinem anderen Popup
 

KS

Aktives Mitglied
keine Antwort? Also vieleicht ist dieser thread zu unübersichtlich. Hier nochmal meine frage:

warum hat java (Swing) solche probleme mit dem korrekten anzeigen von transparenten objekten? gibt es keine einfache lösung eine gruppe von objekte transparent zu machen? ich suche nach einer methode wie die paintComponents, welche alle objekte neu zeichnet, transparent und OHNE FEHLER!

Hier ein Bild vom disaster:

oqf094.jpg


ich habe gerade den slider "R" bewegt. Es ist deutlich zu sehen, dass dieser nun chaotisch gezeichnet wird!

danke an alle antworten!

gruss
chris
 

KS

Aktives Mitglied
hast du mir ein stichwort nachdem ich hier suchen kann. habe scho so lange geblättert... (vieleicht war ich dies auch selber?) :D

thx
chris
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J GUI Programmierung Popup-Menü AWT, Swing, JavaFX & SWT 4
T Maximieren des Application-Modal Popup-Dialoges+Parent AWT, Swing, JavaFX & SWT 1
N Kontextmenü (Popup-Fenster) erstellen AWT, Swing, JavaFX & SWT 3
A Swing JTextField an Button übergeben für Popup-Fenster funktioniert nicht AWT, Swing, JavaFX & SWT 3
F Popup Menu etwas verschieben AWT, Swing, JavaFX & SWT 2
T Swing Combox Popup vergroessert - Arrow nicht mehr vorhanden! AWT, Swing, JavaFX & SWT 4
X Popup Menü nur bei besonderem Fall öffnen AWT, Swing, JavaFX & SWT 3
B Popup auf der Textcoursor-Position AWT, Swing, JavaFX & SWT 5
B Swing Submenüs im Popup anzeigen AWT, Swing, JavaFX & SWT 2
T Popup Fenster AWT, Swing, JavaFX & SWT 2
B Ladebalken in einem Popup-Fenster AWT, Swing, JavaFX & SWT 6
Kenan89 PopUp Fenster AWT, Swing, JavaFX & SWT 4
Spin Tool: Popup -Programm AWT, Swing, JavaFX & SWT 3
N Swing Frame mit GlassPane und Popup AWT, Swing, JavaFX & SWT 5
B popup in jtable AWT, Swing, JavaFX & SWT 4
C JComboBox Popup nicht öffnen AWT, Swing, JavaFX & SWT 4
K Popup in Swing AWT, Swing, JavaFX & SWT 10
O Info Popup AWT, Swing, JavaFX & SWT 9
T JTable, Popup Fester per Rechtsklick auf Zelle AWT, Swing, JavaFX & SWT 19
W Java Popup bei Win7 und Mac verschieden? AWT, Swing, JavaFX & SWT 2
Eldorado Swing Popup-Menü mit Jspinner AWT, Swing, JavaFX & SWT 4
M Swing JSlider, Popup-Box AWT, Swing, JavaFX & SWT 3
D Swing JTabbedPane, TabComponent & Popup AWT, Swing, JavaFX & SWT 4
lumo SWT CellEditor & Popup AWT, Swing, JavaFX & SWT 3
data89 PopUp-Panel bauen - aber wie? AWT, Swing, JavaFX & SWT 2
S Swing PopUp oeffnet sich nach der Methode, die erst nach Fensteraufruf gestartet wird AWT, Swing, JavaFX & SWT 3
aze JTable in Popup.Problem mit DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 9
N rechtsklick und popup setlocation AWT, Swing, JavaFX & SWT 2
C Swing JComboBox Popup sperren AWT, Swing, JavaFX & SWT 8
B Heavyweight Popup lässt keine MouseEvents durch AWT, Swing, JavaFX & SWT 2
SebSnake Popup-JFrame soll Daten an Parent-JFrame übergeben AWT, Swing, JavaFX & SWT 3
T Button des Popup-Menüs ermitteln AWT, Swing, JavaFX & SWT 4
T JComboBox nur mit Popup AWT, Swing, JavaFX & SWT 4
F Applet und Popup AWT, Swing, JavaFX & SWT 4
G Popup eines Bildes im JTable realisieren AWT, Swing, JavaFX & SWT 3
T Mouse Popup AWT, Swing, JavaFX & SWT 2
H PopUp-Fenster in einer Java Server Faces Anwendung AWT, Swing, JavaFX & SWT 4
J Popup an Cursorstelle anzeigen AWT, Swing, JavaFX & SWT 3
G Popup springt nicht in der Naehe des Klicks auf AWT, Swing, JavaFX & SWT 3
L Popup-Menu AWT, Swing, JavaFX & SWT 2
G Funktion für PopUp Menü AWT, Swing, JavaFX & SWT 32
I Popup-Trigger-Maustaste gleich beim Programmstart ermitteln? AWT, Swing, JavaFX & SWT 7
M JComboBox Popup öffnet nicht AWT, Swing, JavaFX & SWT 6
Q Popup der JComboBox AWT, Swing, JavaFX & SWT 4
S PopUp in JTable / JScrollPane AWT, Swing, JavaFX & SWT 3
S Popup auf Grafik AWT, Swing, JavaFX & SWT 18
T Popup-Menü unter Linux AWT, Swing, JavaFX & SWT 2
B Nicht rechteckige Popup Komponente AWT, Swing, JavaFX & SWT 4
Paule Popup oder Dialog-Feld mit eigenem Inhalt AWT, Swing, JavaFX & SWT 9
G Problem mit Kontextmenu(Popup Menü) AWT, Swing, JavaFX & SWT 3
A Image im Popup-Fenster AWT, Swing, JavaFX & SWT 12
K JTable als Popup in einer JComboBox? AWT, Swing, JavaFX & SWT 3
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
windl Transparentes / halbtransparentes Fenster AWT, Swing, JavaFX & SWT 1
D Transparentes Hauptfenster Events AWT, Swing, JavaFX & SWT 1
S 2D-Grafik Transparentes JScrollPane AWT, Swing, JavaFX & SWT 0
X Transparentes Overlay AWT, Swing, JavaFX & SWT 3
S Canvas durch transparentes JPanel sichtbar machen AWT, Swing, JavaFX & SWT 2
B Swing Transparentes JPanel, Schrift verschmiert AWT, Swing, JavaFX & SWT 22
S Fix für transparentes Systemtray? AWT, Swing, JavaFX & SWT 6
D Transparentes JFrame mit inhalt AWT, Swing, JavaFX & SWT 7
G SWT Linie unter transparentes Canvas zeichnen AWT, Swing, JavaFX & SWT 4
F Transparentes BufferedImage über BufferedImage AWT, Swing, JavaFX & SWT 12
0 Transparentes Panel ohne Rahmen AWT, Swing, JavaFX & SWT 5
Kr0e Transparentes Image -> getGraphics AWT, Swing, JavaFX & SWT 8
S Transparentes JPanel auf einem JimiCanvas AWT, Swing, JavaFX & SWT 2
G transparentes Fenster + Speicherverbrauch AWT, Swing, JavaFX & SWT 3
P Transparentes Window/JFrame (mit SkinLF?) AWT, Swing, JavaFX & SWT 10
M Transparentes gif als extra Klasse auf einen JFrame zeichen AWT, Swing, JavaFX & SWT 17

Ähnliche Java Themen


Oben