Drop-down menü in Toolbar Button

Status
Nicht offen für weitere Antworten.

jawohl

Mitglied
Hat jemand eine Ahnung wie ich dies realisieren kann.
hig37.gif


ich habs mal mit jtogglebutton und jpopupmenu versucht hat aber nicht funktioniert, wobei das nicht heißen soll dass es überhaupt nicht geht. Wäre für jede Hilfe sehr dankbar da ich es für eine Diplomarbeit brauchen würde. Dankeschön.
 

Sky

Top Contributor
Also, 'jtogglebutton' und 'jpopupmenu' halte ich mal für keinen schlechten Anfang... was ging denn an dieser Lösung nicht?? Zeig doch mal den Code, vielleicht ist's ja nur ne Kleinigkeit.
 

AlArenal

Top Contributor
Ich habs auch mal so gemacht und das funzt. Was ich bisher noch nicht gefunden habe ist so ein Button, wie man ihn u.a. in Office-Produkten oder im JBuilder findet, der nochmal unterteilt ist. Wo der eigentliche Button ne eigene Action hat und der Button-Teil mit dem Pfeil nochmal ne eigene Action (eben das Popup-Menü).
 

jawohl

Mitglied
Ja ob ich dann mit dem Pfeil nochmal seperat eine aktion hab ist egal. Mir ist nur wichtig dass ich ein drop-down menü bekomm.

ja also es scheitert daran dass ich nicht genau weiß wie ich den Button mit dem Drop-down menü verbinden soll, dass er dann auch wirklich das Teil ausklappt.

Wenn mir jemand ein kleines Code beispiel geben könnte wäre es super.
 

AlArenal

Top Contributor
Na auf den Button legste ganz normal deinen Event-Handler. Darin sagste dann er soll das Popup-Menü aufmachen. Wenn button der gewünschte Button ist und popup das Popup-Menü, dann öffnet folgende Zeile in dem Event-Handler das Popup-Menü direkt unter den Button, bündig mit der linken Kante des Buttons abschließend. Und da sich das Ganze direkt auf den Button bezieht und nicht auf irgendwelche Koordinaten, wird das Menü auch beim Verschieben des Fensters mitverschoben.

Code:
popup.show(button, 0, button.getHeight());
 
B

Beni

Gast
Ich hab noch den Code zu solch einem Button, vielleicht nützt er dir was (ist leider Bestandteil eines Progis, und nicht ganz soooo allgemein geschrieben).

Code:
/*
 * Created on 05.07.2004
 */
package beziermanager.gui;

import java.awt.Component;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Vector;

import javax.swing.ButtonGroup;
import javax.swing.Icon;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JPopupMenu;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JToggleButton;
import javax.swing.SwingUtilities;
import javax.swing.event.PopupMenuEvent;
import javax.swing.event.PopupMenuListener;

import beziermanager.Resources;
import beziermanager.event.DropDownButtonListener;

/**
 * @author Benjamin Sigg
 * @version 1.0
 */
public class DropDownButton extends JComponent {
	private JToggleButton button;
	private JButton dropButton;
	private JPopupMenu menu;
	private int dropWidth = 5;
	
	private Vector<DropDownButtonListener> listeners = new Vector<DropDownButtonListener>();
	private Listener listener = new Listener();
	
	private Capsel selection = null;
	private Vector<Capsel> values = new Vector<Capsel>();
	
	private ButtonGroup group = new ButtonGroup();
	
	// gibt an, ob ein Event abgeschossen werden soll
	private boolean fire = true;
	
	private static final Insets NULL_INSETS = new Insets( 0, 0, 0, 0 );
	
	public DropDownButton() {
		button = new JToggleButton(){
			public void paint( Graphics g ){
				super.paint( g );
				
				if( dropButton != null ){
					g = g.create( dropButton.getX(), dropButton.getY(), dropButton.getWidth(), dropButton.getHeight() );
					dropButton.paint( g );
				}
			}
		};
		button.addItemListener( new ItemListener(){
			public void itemStateChanged(ItemEvent e) {
				if( !button.isSelected() ){
					menu.setVisible( false );
					fireAction();
				}
			}
		});
		
		button.addMouseListener( new MouseAdapter(){
			public void mouseReleased(MouseEvent e) {
				if( button.isSelected() )
					button.setSelected( false );
			}
		});
		
		dropButton = new JButton( Resources.getIcon( "menu button" ) ){
			public void paint( Graphics g ){
				Icon icon = getIcon();
				if( icon != null ){
					int x = (getWidth() - icon.getIconWidth()) / 2;
					int y = (getHeight() - icon.getIconHeight()) / 2;
					icon.paintIcon( this, g, x, y );
				}
			}
		};
		
		setLayout( null );
		
		dropButton.setBorder( null );
		dropButton.setOpaque( false );
		add( dropButton );
		
		add( button );
		
		menu = new JPopupMenu();
		
		dropButton.addActionListener( new ActionListener(){
			public void actionPerformed( ActionEvent e ) {
				menu.show( dropButton, - dropButton.getX(), dropButton.getHeight() );
				button.setSelected( true );
			}
		});
		
		menu.addPopupMenuListener( new PopupMenuListener(){

			public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
			}

			public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
			}

			public void popupMenuCanceled(PopupMenuEvent e) {
				fire = false;
				button.setSelected( false );
				fire = true;
			}
			
		});
		
		setIcon( null );
	}
	
	
	public void setIcon( Icon defaultIcon ) {
		button.setIcon( new ButtonIcon( defaultIcon ));
	}
	
	private void setSelection( Capsel capsel ){
		selection = capsel;
		if( capsel == null ){
			setIcon( Resources.EMPTY_ICON );
			button.setToolTipText( "" );
		}
		else{
			setIcon( capsel.icon );
			button.setToolTipText( capsel.text );
			capsel.menuItem.setSelected( true );
		}
	}
	
	public Object getSelection(){
		if( selection == null )
			return null;
		else
			return selection.value;
	}
	
	public void setSelection( Object value ){
		if( value == null ){
			if( selection != null )
				selection.menuItem.setSelected( false );
			setSelection( null );
		}
		else{
			Capsel capsel = find( value );
			if( capsel == null ){
				if( selection != null )
					selection.menuItem.setSelected( false );
				setSelection( null );
			}
			else{
				setSelection( capsel );
			}
		}
	}
	
	public Insets getInsets() {
		Insets insets = button.getInsets();
		return insets == null ? NULL_INSETS : insets;
	}
	
	/**
	 * Gibt die Anzahl Werte zurück, welche von diesem DropDownButton
	 * angezeigt werden.
	 * @return Die Anzahl Werte
	 */
	public int getItemCount(){
		return values.size();
	}
	
	public Object getItem( int index ){
		return values.get( index ).value;
	}
	
	public synchronized void insertItem( Icon icon, String text, Object value, int index ){
		Capsel capsel = new Capsel( icon, text, value );
		values.insertElementAt( capsel, index );
		JRadioButtonMenuItem item = new JRadioButtonMenuItem( text, icon, false );
		capsel.menuItem = item;
		menu.insert( item, index );
		group.add( item );
		
		if( selection == null )
			setSelection( capsel );
		
		item.addItemListener( listener );
		item.addActionListener( listener );
	}
	
	public void setIcon( Object value, Icon icon ){
		Capsel capsel = find( value );
		capsel.icon = icon;
		capsel.menuItem.setIcon( icon );
		if( selection == capsel )
			setIcon( icon );
	}
	
	public void setIcon( int index, Icon icon ){
		Capsel capsel = values.get( index );
		capsel.icon = icon;
		capsel.menuItem.setIcon( icon );
		if( selection == capsel )
			setIcon( icon );		
	}
	
	public void setText( Object value, String text ){
		Capsel capsel = find( value );
		capsel.text = text;
		capsel.menuItem.setText( text );
		if( selection == capsel )
			button.setToolTipText( text );		
	}
	
	public void setText( int index, String text ){
		Capsel capsel = values.get( index );
		capsel.text = text;
		capsel.menuItem.setText( text );
		if( selection == capsel )
			button.setToolTipText( text );	
	}
	
	public void removeItem( Object value ){
		Capsel capsel = find( value );
		if( capsel != null ){
			if( capsel == selection )
				setSelection( null );
			
			menu.remove( capsel.menuItem );
			capsel.menuItem.removeItemListener( listener );
			capsel.menuItem.removeActionListener( listener );
			group.remove( capsel.menuItem );
			values.remove( capsel );
		}
	}
	public void removeItem( int index ){
		Capsel capsel = values.remove( index );

		if( capsel == selection )
			setSelection( null );
			
		menu.remove( capsel.menuItem );
		capsel.menuItem.removeItemListener( listener );
		group.remove( capsel.menuItem );
		values.remove( capsel );
	}

	private Capsel find( Object value ){
		for( int i = 0, n = values.size(); i<n; i++ ){
			Capsel c = values.get( i );
			if( c.value == value )
				return c;
		}
		
		for( int i = 0, n = values.size(); i<n; i++ ){
			Capsel c = values.get( i );
			if( c.value.equals( value ) )
				return c;
		}
		
		return null;
	}
	
	private Capsel find( JRadioButtonMenuItem item ){
		for( int i = 0, n = values.size(); i<n; i++ ){
			Capsel c = values.get( i );
			if( c.menuItem == item )
				return c;
		}
		
		return null;
	}
	
	public void addDropDownButtonListener( DropDownButtonListener l ){
		listeners.add( l );
	}
	public void removeDropDownButtonListener( DropDownButtonListener l ){
		listeners.remove( l );
	}
	
	protected void fireAction(){
		if( fire )
			for( DropDownButtonListener x : listeners )
				x.actionPerformed( this, selection.value );
	}
	
	public void updateUI() {
		super.updateUI();
		if( dropButton != null )
			dropButton.updateUI();
		
		if( menu!= null )
			SwingUtilities.updateComponentTreeUI( menu );
	}
	
	public Dimension getMinimumSize() {
		return button.getMinimumSize();
	}
	
	public Dimension getPreferredSize() {
		return button.getPreferredSize();
	}
	
	public void paint( Graphics g ){
		if( button != null )
			button.paint( g );
	}
	
	public void doLayout() {
		if( button != null ){
			button.setBounds( 0, 0, getWidth(), getHeight() );
			
		}
		
		if( dropButton != null ){
			Insets insets = getInsets();
			
			dropButton.setBounds( getWidth()-dropWidth-insets.right , insets.top,
					dropWidth+insets.right, getHeight()-insets.top-insets.bottom );
		}
	}
	
	private class Listener implements ActionListener, ItemListener{
		public void actionPerformed(ActionEvent e) {
			button.setSelected( false );
		}
		
		public void itemStateChanged( ItemEvent e ) {
			JRadioButtonMenuItem item = (JRadioButtonMenuItem)e.getSource();
			if( item.isSelected() ){
				Capsel capsel = find( item );
				setIcon( capsel.icon );
				selection = capsel;
				button.setSelected( false );
			}
		}
	}
	
	private class Capsel{
		public Icon icon;
		public String text;
		public Object value;
		public JRadioButtonMenuItem menuItem;
		
		public Capsel( Icon icon, String text, Object value ){
			this.icon = icon;
			this.text = text;
			this.value = value;
		}
		
		public Capsel(){
		}
	}
	
	private class ButtonIcon implements Icon{
		private Icon original;
		
		public ButtonIcon( Icon original ){
			this.original = original;
		}
		
		public int getIconHeight() {
			return original == null ? 16 : original.getIconHeight();
		}
		
		public int getIconWidth() {
			return original == null ? 16 : original.getIconWidth() + (getInsets().right + dropWidth) / 2;
		}
		public void paintIcon( Component c, Graphics g, int x, int y ) {
			if( original != null )
				original.paintIcon(c, g, x, y);
		}
	}
}

Code:
/*
 * Created on 06.07.2004
 */
package beziermanager.event;

import beziermanager.gui.DropDownButton;

/**
 * @author Benjamin Sigg
 * @version 1.0
 */
public interface DropDownButtonListener {
	/**
	 * Wird aufgerufen, wenn der User auf den Button geklickt hat, oder ein
	 * neues Element selektiert wurde.
	 * @param source Der DropDownButton, der das Ereignis ausgelöst hat.
	 * @param selection Die Selektion des Buttons oder null, sollte nichts
	 * selektiert sein.
	 */
	public void actionPerformed( DropDownButton source, Object selection );
}

forum_043.png
 
Ich arbeite gerade an einer simplen Version eines solchen Buttons.
Habe allerdings erst ein paar Minuten investiert, es fehlt also noch de r Pfeil an der Seite (ich bin mir auch noch nicht im klaren welche Methode ich dafür verwenden soll, die eigentlich korrekte, d.h. per ButtonUI, oder eine etwas fiesere per paintComponent - die einfacher und portabler, dafür aber unpassender wäre).

Hier ist mein bisheriger Code (natürlich ziehmlich unschön - ist halt nur Prototyp):
Code:
/*
 * This file is part of PgsSwing - Utilities and components for Swing
 * Copyright (c) 2004 Patrick Gotthardt
 * 
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
package com.pagosoft.swing;

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

public class JPopupButton extends JButton {
	private JPopupMenu menu;
	private boolean popupVisible;
	
	public JPopupButton() {
		super();
		_init();
	}
	
	public JPopupButton(String label) {
		super(label);
		_init();
	}
	
	public JPopupButton(Icon ico) {
		super(ico);
		_init();
	}
	
	public JPopupButton(String label, Icon ico) {
		super(label, ico);
		_init();
	}
	
	private void _init() {
		super.setModel(new DefaultButtonModel() {
			public boolean isPressed() {
				return isPopupVisible() || super.isPressed();
			}
			
			public boolean isArmed() {
				return isPopupVisible() || super.isArmed();
			}
			
			public boolean isRollover() {
				return isPopupVisible() || super.isRollover();
			}
		});
		
		popupVisible = false;
		
		menu = new JPopupMenu();
		menu.addPopupMenuListener(new PopupListener(this));
		
		addActionListener(new PopupHandler(this, menu));
	}
	
	public JPopupMenu getMenu() {
		return menu;
	}
	
	/**
	 * Even if this method is public,
	 * don't use it (except you're going to create a
	 * UI or something like that...)!
	 */
	public void setPopupVisible(boolean isVisible) {
		popupVisible = isVisible;
	}
	
	public boolean isPopupVisible() {
		return popupVisible;
	}
	
	private class PopupHandler implements ActionListener {
		private JPopupButton button;
		private JPopupMenu menu;
		
		public PopupHandler(JPopupButton b, JPopupMenu m) {
			button = b;
			menu = m;
		}
		
		public void actionPerformed(ActionEvent e) {
			menu.show(button, 0, button.getHeight());
		}
	}
	
	private class PopupListener implements PopupMenuListener {
		JPopupButton button;
		public PopupListener(JPopupButton b) {
			button = b;
		}
		
		public void popupMenuCanceled(PopupMenuEvent e) {}
		public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
			button.setPopupVisible(false);
		}
		public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
			button.setPopupVisible(true);
		}
	}
}

Anwendungsbeispiel:
Code:
JPopupButton pb = new JPopupButton("Click");
JPopupMenu menu = pb.getMenu();
menu.add(new JMenuItem("Test"));
menu.add(new JMenuItem("Test2"));
menu.add(new JMenuItem("Test3"));
menu.add(new JMenuItem("Test4"));

attachment.php


Eigenwerbung ist nicht erlaubt, deswegen schreibe ich hier mal nicht hin, wo man die fertige Komponente herbekommt - wenn sie denn fertig ist. ;)

Anmerkung: Die Variante von Beni ist ebenfalls nicht schlecht, aber für meinen Geschmack sollte ein Button ein Button sein und kein JComponent.
Meine Version hat aktuell allerdings noch nicht die Möglichkeit - und wird sie auch in dieser Form nicht bekommen - zwischen Klick auf den (aktuell noch nicht existierenden) Pfeil und Klick auf den Button zu unterscheiden.
Das werde ich später in Form eines von JPopupButton abgeleiteten Buttons (JSplitButton o.ä.) realisieren.
 

Anhänge

  • JPopupButton.png
    JPopupButton.png
    7,5 KB · Aufrufe: 57

jawohl

Mitglied
AlArenal hat gesagt.:
Na auf den Button legste ganz normal deinen Event-Handler. Darin sagste dann er soll das Popup-Menü aufmachen. Wenn button der gewünschte Button ist und popup das Popup-Menü, dann öffnet folgende Zeile in dem Event-Handler das Popup-Menü direkt unter den Button, bündig mit der linken Kante des Buttons abschließend. Und da sich das Ganze direkt auf den Button bezieht und nicht auf irgendwelche Koordinaten, wird das Menü auch beim Verschieben des Fensters mitverschoben.

Code:
popup.show(button, 0, button.getHeight());

Super, danke. Jetzt hats funktioniert.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S SWT: Drop-Down Menü-Einträge mit Tooltip hervorheben AWT, Swing, JavaFX & SWT 3
T Swing JFileChooser --> Desktop und Laufwerke im "Suchen in" - Drop Down AWT, Swing, JavaFX & SWT 3
hdi SWT JComboBox : Drop-Down Header ohne Eintrag AWT, Swing, JavaFX & SWT 6
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
G JPanel per Drag and Drop JButtons und Bilder ablegen AWT, Swing, JavaFX & SWT 1
AmsananKING ListView Drag And Drop AWT, Swing, JavaFX & SWT 0
AmsananKING Drag And Drop Filenames Inside A Listview AWT, Swing, JavaFX & SWT 1
DonBronson Java Graphics bewegbar machen (Drag&Drop) AWT, Swing, JavaFX & SWT 3
M Polygon per Drag&Drop verschieben AWT, Swing, JavaFX & SWT 26
Z Swing Drag and Drop mit einem JButton AWT, Swing, JavaFX & SWT 1
S Drop Target Instanzprüfung AWT, Swing, JavaFX & SWT 6
N Drag and Drop Fenster AWT, Swing, JavaFX & SWT 11
F Drag&Drop mit Transparenter Farbe bei PNG AWT, Swing, JavaFX & SWT 0
D JavaFX Pane per Drag&Drop bewegen? AWT, Swing, JavaFX & SWT 2
L JavaFX Drag and Drop funktioniert nicht AWT, Swing, JavaFX & SWT 3
J Drag and Drop von eigenen Objekten AWT, Swing, JavaFX & SWT 3
J Drag and Drop eines Buttons AWT, Swing, JavaFX & SWT 0
T Swing Drag and Drop für JComponents AWT, Swing, JavaFX & SWT 1
Z Swing Drag&Drop zwischen JTable und JTree AWT, Swing, JavaFX & SWT 4
F Drag und Drop AWT, Swing, JavaFX & SWT 0
L JavaFX JavaFX Chart Drag and Drop AWT, Swing, JavaFX & SWT 3
D JavaFX Drag&Drop mehrerer TreeViews oder TableViews AWT, Swing, JavaFX & SWT 1
P Drag & Drop zwischen Panels AWT, Swing, JavaFX & SWT 0
U Drag and Drop mit imageview AWT, Swing, JavaFX & SWT 0
U Drag and Drop imageviews AWT, Swing, JavaFX & SWT 8
D SteelSeries in Netbeans als Drag-and-Drop einbinden AWT, Swing, JavaFX & SWT 0
C JTable Drag and Drop von Zeilen innerhalb einer Table AWT, Swing, JavaFX & SWT 2
S Swing Update eine JTabelle nach einer Drag&Drop Operation AWT, Swing, JavaFX & SWT 0
S Swing Suche Drag & Drop Beispiele AWT, Swing, JavaFX & SWT 1
A Drag and Drop mit JAVAFX- Scenebuilder AWT, Swing, JavaFX & SWT 1
R Performance Drag and Drop & Timer AWT, Swing, JavaFX & SWT 3
R Drag and Drop Problem auf Jpanel AWT, Swing, JavaFX & SWT 2
N Swing JTable und Drag und Drop AWT, Swing, JavaFX & SWT 2
A Drag and Drop eigener Objekte AWT, Swing, JavaFX & SWT 7
C Drag and Drop (inventar) AWT, Swing, JavaFX & SWT 15
F Swing Drag and Drop in JTree aus verschiedenen Listen AWT, Swing, JavaFX & SWT 6
T Swing JButton per Drag&Drop verschieben AWT, Swing, JavaFX & SWT 5
Iron Monkey JFileChooser - Drag and Drop AWT, Swing, JavaFX & SWT 5
Iron Monkey Nach Drag & Drop die Datei auf Komponent darstellen AWT, Swing, JavaFX & SWT 2
M AWT Drag n Drop-Support für Component AWT, Swing, JavaFX & SWT 5
HaukeG Swing Drag & Drop in verschiedenen Varianten AWT, Swing, JavaFX & SWT 4
S Swing Drag&Drop mit TransferHandler und JPanels AWT, Swing, JavaFX & SWT 8
C Swing Simulation von Drag and Drop Events AWT, Swing, JavaFX & SWT 3
H Swing "Drag and Drop" eines JComponent über ein JPanel AWT, Swing, JavaFX & SWT 2
R Drag 'n Drop AWT, Swing, JavaFX & SWT 3
Daniel_L Drop von Dateien auf Frame - welche Drop-Location? AWT, Swing, JavaFX & SWT 2
L SWT Drop erfolgreich, aber GUI-Aktion abgebrochen AWT, Swing, JavaFX & SWT 4
G SWT TreeViewer - drop listener austauschen AWT, Swing, JavaFX & SWT 2
S Selektion bei Drag&Drop AWT, Swing, JavaFX & SWT 4
C Swing Drag and Drop mit Objekten in einem Fenster. AWT, Swing, JavaFX & SWT 9
T SWT Drag&Drop: Eclipse FileTransfer mit Icons AWT, Swing, JavaFX & SWT 14
F Drag & Drop durch Verbindungslinien AWT, Swing, JavaFX & SWT 10
T Swing Drag and Drop - JLabels tauschen statt überschreiben AWT, Swing, JavaFX & SWT 11
S Drag and Drop über 2 Panels AWT, Swing, JavaFX & SWT 2
K JButtons innerhalb eines JPanels verschieben (DRAG&DROP) AWT, Swing, JavaFX & SWT 5
B Drag and Drop AWT, Swing, JavaFX & SWT 6
K Drag and Drop Workbench AWT, Swing, JavaFX & SWT 2
P SWT Eclipse Draw2D Drag and Drop (ruckelt) AWT, Swing, JavaFX & SWT 4
F SWT Drag and Drop im TreeViewer AWT, Swing, JavaFX & SWT 4
B Swing Drag&Drop mit Feedback (Image am Mauszeiger) AWT, Swing, JavaFX & SWT 7
P [JTree] Markierhilfe der Drop-Location selber gestalten. AWT, Swing, JavaFX & SWT 4
Spin JFrame/ Frame Drag and Drop AWT, Swing, JavaFX & SWT 13
A TransferHandler & Drag n' Drop AWT, Swing, JavaFX & SWT 2
R Drag an Drop JTable Zelle AWT, Swing, JavaFX & SWT 6
D Drag & Drop - node.isRoot AWT, Swing, JavaFX & SWT 3
E Swing Drag n Drop Verschieben von Labels o.ä. AWT, Swing, JavaFX & SWT 10
E Swing Beim Drag & Drop, Drag verbieten?! AWT, Swing, JavaFX & SWT 2
E JTree Autoscroll bei Drag and Drop AWT, Swing, JavaFX & SWT 4
F Swing Problem mit Drag&Drop in JTable AWT, Swing, JavaFX & SWT 4
C keine weiteren Events während Drag&Drop Operation möglich? AWT, Swing, JavaFX & SWT 5
K 2D-Grafik Schattenwurf (Drop-Shadow) für Fenster AWT, Swing, JavaFX & SWT 5
E Drag&Drop zwischen 2 Listen AWT, Swing, JavaFX & SWT 5
0 Swing Drag n' Drop Bug wenn Source und Target gleiche Komponente? AWT, Swing, JavaFX & SWT 4
C Drag and Drop JPanel auf JPanel nach drop erneut verschieben? AWT, Swing, JavaFX & SWT 3
M Swing JTable Drag'n'Drop von Dateien AWT, Swing, JavaFX & SWT 3
M Drag and Drop: Quellfenster AWT, Swing, JavaFX & SWT 2
M Buttons per Drag & Drop im GridBagLayout verschieben AWT, Swing, JavaFX & SWT 6
M Swing JList > Drag & Drop AWT, Swing, JavaFX & SWT 2
C Drag an Drop vom JTree zur JTable AWT, Swing, JavaFX & SWT 4
Z Drag and Drop auf Application AWT, Swing, JavaFX & SWT 3
G Drag and Drop JTree to Canvas AWT, Swing, JavaFX & SWT 7
H Drag&Drop von JComponents AWT, Swing, JavaFX & SWT 6
G JTable drag and drop AWT, Swing, JavaFX & SWT 4
H Drag&Drop mit GWT AWT, Swing, JavaFX & SWT 8
B Swing Drag&Drop einzelner Zellen in einer JTable AWT, Swing, JavaFX & SWT 12
A Swing Drag and Drop TreeNode User Object AWT, Swing, JavaFX & SWT 3
P JList: Reihenfolge der Elemente per Drag'n'Drop ändern. AWT, Swing, JavaFX & SWT 9
K Swing Wie ändere ich die default action für Drag&Drop AWT, Swing, JavaFX & SWT 6
R JLayeredPane - Drag&Drop - mouseDragged AWT, Swing, JavaFX & SWT 6
C JTable mit RowSorter und Drag & Drop: Zeile verschieben AWT, Swing, JavaFX & SWT 4
V SWT TreeViewer Drag'n'Drop LocalSelectionTransfer AWT, Swing, JavaFX & SWT 10
R Swing JLayeredPane - Drag&Drop Positionen vertauschen AWT, Swing, JavaFX & SWT 3
F Drag & Drop mit eigenen Komponenten AWT, Swing, JavaFX & SWT 2
B SWT - Drag & Drop innerhalb einer Table AWT, Swing, JavaFX & SWT 3
S Drag'n'Drop AWT, Swing, JavaFX & SWT 8
E Drag&Drop JTable; Renderer füllt alle Zellen AWT, Swing, JavaFX & SWT 10
M Drag & Drop in Swing (createTransferable) AWT, Swing, JavaFX & SWT 6
T Drag Quelle beim Drop AWT, Swing, JavaFX & SWT 6
A Drag & Drop von Zeilen innerhalb einer Tabelle AWT, Swing, JavaFX & SWT 2
E Drag & Drop von jTree in JList AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben