Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Antwort
 
Themen-Optionen
Alt 18.03.2005, 21:31   Nach oben    #1
Java17
Gast
 
Beiträge: n/a
Standard Drag and Drop?

HAllo,

ich möchte nun meine im Panel erstellten Buttons mit der
Maus anklicken und auf die Grundfläche ziehen können.
Dort wo die Maus zum Stehen kommt, soll nun eine identische Zeichnung des "gedragten" Buttons erstellt werden.
Nennt sich das denn überhaupt Drag and Drop?
Könnt ihr mir Tipps dazu geben?

Vielen Dank,

einen ganz lieben Gruß
JAsmin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2005, 22:50   Nach oben    #2
bluelight
Gast
 
Beiträge: n/a
Standard

Wenn du das zur Laufzeit des Programms machen willst bleibt dir nichts aderes übrig als die Positionen der maus abzufragen und dem nach dein panel neu zu zichnen

mfg
bluelight
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.03.2005, 23:21   Nach oben    #3
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Drag'n'Drop ist möglich. Allerdings habe ich mich damit noch nicht näher beschäftigt.

Vielleicht hilft Dir das hier.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.03.2005, 12:49   Nach oben    #4
Neuer Benutzer
 
Benutzerbild von dyrathror
 
Registriert seit: 17.03.2005
Beiträge: 18
Standard

Ich kann Dir nur die Lektüre der API von "java.awt.dnd" und "java.awt.datatransfer.Transferable" ans Herz legen. Ein sauberes DND ist etwas aufwendiger zu implementieren, da z.B. die DragSource und das DragTarget nicht in der gleichen JVM laufen müssen. Der Datentransfer erfolgt dann durch ein Objekt, daß das Interface Transferable implementiert und basiert im Grunde auf einer Serialisierung/Deserialisierung.

Viel Spaß
Stephan
dyrathror ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 13:01   Nach oben    #5
Java17
Gast
 
Beiträge: n/a
Standard

Hallo,
uf, ganz schön kompliziert, aber danke.

Ich werde es nun etwas einfacher versuchen.
Zuerst Button anklicken, und anschließend an der entsprechenden Mausposition diesen Button "bild.gif" neu zeichnen. Geht das mit repaint() ??Allerdings soll dem Objekt dann noch ein neuer Name per Abfrage gegeben werden. Habt ihr schon mal so eine Bedieneroberfläche wie bei "Umbrello" oder "Visio" programmiert? Da werden die angeklickten Objekte im Panel gezeichnet und anschließend gibt es die Möglichkeit diese Objekte mit einer Linie/Vektor zu verbinden.
Genau so etwas möchte ich machen.
Mein Erfahrungsschatz in Java ist noch sehr klein, und drum bin ich euch, für
jeden noch so kleinen Hinweis, Tipp, Beispiel sehr dankbar.

Einen ganz lieben Gruß
Jasmin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 13:30   Nach oben    #6
`B
Benutzer
 
Benutzerbild von `B
 
Registriert seit: 05.07.2004
Beiträge: 95
Standard

hui sowas habsch noch nie gemacht aber ich fänd es echt lieb wenn du mir deine Erkenntnisse später per Mail oder PN zukommen lassen könntest. Ist ein Interessantes Thema.
__________________
`B ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 14:26   Nach oben    #7
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Hi,

ich habe mich am Wochenende hingesetzt und einmal Drag&Drop für einen Baum und das zugehörige Panel implementiert. Wenn Du das möchtest, könnte ich ihn heute oder morgen Abend hier präsentieren. Es ist doch nicht so schlimm, wie ich dachte. Nur ein wenig aufwandsbedingt.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 15:00   Nach oben    #8
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.091
Standard

Mach das mal.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 15:59   Nach oben    #9
Java17
Gast
 
Beiträge: n/a
Standard

Ja, ich fände es auch super,
wenn du dein Drag and Drop Beispiel heute hier
representierst!

Einen ganz lieben Gruß
Jasmin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 18:07   Nach oben    #10
Neuer Benutzer
 
Benutzerbild von dyrathror
 
Registriert seit: 17.03.2005
Beiträge: 18
Standard

Zitat:
Zitat von Java17
Hallo,
uf, ganz schön kompliziert, aber danke.

Reine Nervensache So kompliziert ist das gar nicht, muß Du nur mal gemacht haben.

Ich werde es nun etwas einfacher versuchen.
Zuerst Button anklicken, und anschließend an der entsprechenden Mausposition diesen Button "bild.gif" neu zeichnen. Geht das mit repaint() ??

Also bei dem was Du vorhast würde ich Dir raten direkt in den GraphicsContext zu schreiben (siehe java.awt.Graphics2D), das ist die einzige Möglichkeit beliebige Images an beliebiger Position in einem Fenster darzustellen. Guter Tip hierzu ist das Java2D Tutorial

Allerdings soll dem Objekt dann noch ein neuer Name per Abfrage gegeben werden. Habt ihr schon mal so eine Bedieneroberfläche wie bei "Umbrello" oder "Visio" programmiert?

Ja, habe ich. Allerdings alles in C++ und schon lange her

Da werden die angeklickten Objekte im Panel gezeichnet und anschließend gibt es die Möglichkeit diese Objekte mit einer Linie/Vektor zu verbinden.
Genau so etwas möchte ich machen.

Hier beginnt jetzt das Problem. Während Du beliebige Objekte noch relativ einfach in einem java.awt.Canvas oder ähnlichem darstellen kannst. Mußt Du bei Kanten zwischen 2 Objekten beachten, das Du ja die Kante nicht in das Objekt hineinzeichnen möchtest. Dazu bedient man sich der sogenannten Hotspots. Das sind Punkte auf dem Rand Deines Objekts, die Du Dir zu dem Objekt merkst und die Du als Ankerpunkte für Deine Kanten nimmst. Das Problem besteht darin, bei einem beliebigen Objekt den Rand zu bestimmen Dazu gabs natürlich auch einen Trick aber ich kann mein altes Graphikbuch im Moment nicht finden. Hatte glaube ich irgend etwas mit Maskieren und XOR zu tun.

Zu guter Letzt solltest Du Dir noch ein paar Gedanken über die Verwaltung Deiner Knoten und Kanten machen. Die klassische Graphentheorie schlägt hier Adjazenzmatrix, Inzidenzmatix oder Adjazenzliste vor, wobei ich damals einen Mischmasch gemacht habe. Ich habe mir sowohl die Knoten als auch die Kanten in je einer Liste gemerkt und dann noch an den Knoten welche Kanten von dem Knoten aus- bzw. eingehen.
Viel Spaß!

Und wenn Du nicht weiterkommst, frag einfach nach. Vielleicht kann ich ja mal in meinen alten C++ Sourcen nach dem einen oder anderen Trick suchen.

Stephan
dyrathror ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 22:21   Nach oben    #11
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 433
Standard

Ok,

hier kommt meine Lösung, allerdings ist es noch nicht komplett ausgereift und geht sicher ein wenig einfacher. Mein Tree sieht so aus:
Code:
package de.lmprojects.konfigurator.gui;

import java.awt.BorderLayout;
import java.awt.dnd.DnDConstants;
import java.awt.dnd.DragGestureEvent;
import java.awt.dnd.DragGestureListener;
import java.awt.dnd.DragSource;
import java.awt.dnd.DragSourceDragEvent;
import java.awt.dnd.DragSourceDropEvent;
import java.awt.dnd.DragSourceEvent;
import java.awt.dnd.DragSourceListener;

import javax.swing.JTree;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;

import de.lmprojects.konfigurator.dnd.DnDObject;
import de.lmprojects.konfigurator.elements.Language;

public class DragTree extends JTree implements DragSourceListener, DragGestureListener{

    //  TreeNodes
    private DefaultMutableTreeNode top;
    private DefaultMutableTreeNode dragme1 = new DefaultMutableTreeNode(new DnDObject("Dragme1"));
    private DefaultMutableTreeNode dragme2 = new DefaultMutableTreeNode(new DnDObject("Dragme2"));
    
    public DragTree(TreeSelectionListener lst, DefaultMutableTreeNode node) {
        // Übergabe des Topnodes ist noch nötig.
        super(node);
        top = node;
        setLayout(new BorderLayout());
        createNodes(lst);
        
        DragSource dragsource = new DragSource();
        dragsource.createDefaultDragGestureRecognizer(this, DnDConstants.ACTION_COPY_OR_MOVE, this);
        
    }
    
    // --- private methods --------------------------------------------------------
    
    private void createNodes(TreeSelectionListener lst) {
        
        top.add(dragme1);
        top.add(dragme2);
        
        addTreeSelectionListener(lst);
        expandRow(0);
        setRootVisible(false);
        
    }
    
    // ---  implemented methods ---------------------------------------------------
    
    /* (non-Javadoc)
     * @see java.awt.dnd.DragSourceListener#dragEnter(java.awt.dnd.DragSourceDragEvent)
     */
    public void dragEnter(DragSourceDragEvent dsde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DragSourceListener#dragOver(java.awt.dnd.DragSourceDragEvent)
     */
    public void dragOver(DragSourceDragEvent dsde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DragSourceListener#dropActionChanged(java.awt.dnd.DragSourceDragEvent)
     */
    public void dropActionChanged(DragSourceDragEvent dsde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DragSourceListener#dragExit(java.awt.dnd.DragSourceEvent)
     */
    public void dragExit(DragSourceEvent dse) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DragSourceListener#dragDropEnd(java.awt.dnd.DragSourceDropEvent)
     */
    public void dragDropEnd(DragSourceDropEvent dsde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DragGestureListener#dragGestureRecognized(java.awt.dnd.DragGestureEvent)
     */
    public void dragGestureRecognized(DragGestureEvent dge) {
        	// TODO Auto-generated method stub
        DefaultMutableTreeNode node = (DefaultMutableTreeNode)((DragTree)dge.getComponent()).getLastSelectedPathComponent();
        String e = node.getUserObject().getClass().getName(); 
        
        	if(e.equals("de.lmprojects.konfigurator.dnd.DnDObject"))
        		dge.startDrag(DragSource.DefaultCopyDrop, (DnDObject)node.getUserObject(), this);

    }
    

}
Dem Konstruktor muss ein Top-Node mitgegeben werden (einfacher leerer DefaultMutableTreeNode reicht hier), sowie ein Listener, der aber für Euch keine weitere Bedeutung hat.
Die Komponente, in die eingefügt werden soll, sieht wie folgt aus:
Code:
package de.lmprojects.konfigurator.gui;

import java.awt.BorderLayout;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.dnd.DnDConstants;
import java.awt.dnd.DropTarget;
import java.awt.dnd.DropTargetDragEvent;
import java.awt.dnd.DropTargetDropEvent;
import java.awt.dnd.DropTargetEvent;
import java.awt.dnd.DropTargetListener;

import javax.swing.JPanel;
import javax.swing.JTextArea;

import de.lmprojects.konfigurator.dnd.DnDObject;

public class DropPanel extends JPanel implements DropTargetListener {

    JTextArea pane = new JTextArea();
    
    public DropPanel() {
        
        setLayout(new BorderLayout());
        
        new DropTarget(pane, DnDConstants.ACTION_COPY_OR_MOVE, this);
        
        add(pane, BorderLayout.CENTER);
        
    }
    
    // --- implemented methods --------------------------------
    
    /* (non-Javadoc)
     * @see java.awt.dnd.DropTargetListener#dragEnter(java.awt.dnd.DropTargetDragEvent)
     */
    public void dragEnter(DropTargetDragEvent dtde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DropTargetListener#dragOver(java.awt.dnd.DropTargetDragEvent)
     */
    public void dragOver(DropTargetDragEvent dtde) {
        // TODO Auto-generated method stub
        
    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DropTargetListener#dropActionChanged(java.awt.dnd.DropTargetDragEvent)
     */
    public void dropActionChanged(DropTargetDragEvent dtde) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DropTargetListener#dragExit(java.awt.dnd.DropTargetEvent)
     */
    public void dragExit(DropTargetEvent dte) {
        // TODO Auto-generated method stub

    }

    /* (non-Javadoc)
     * @see java.awt.dnd.DropTargetListener#drop(java.awt.dnd.DropTargetDropEvent)
     */
    public void drop(DropTargetDropEvent dtde) {
        // TODO Auto-generated method stub
        try {
            dtde.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE);
            java.awt.datatransfer.Transferable t = dtde.getTransferable();
            DataFlavor df = new DataFlavor(Class.forName("de.lmprojects.konfigurator.dnd.DnDObject"), "test");
            pane.setText(((DnDObject)t.getTransferData(df)).toString());
            //System.out.println(((DnDObject)t.getTransferData(df)).toString());
            dtde.dropComplete(true);
        } 
        catch(java.io.IOException ex) {
            System.out.println(ex);
        }
        catch(UnsupportedFlavorException ex) {
            System.out.println(ex);
        }
        catch(ClassNotFoundException ex) {
            System.out.println(ex);
        }  
    }
}
Hier handelt es sich um ein JPanel. Nun kann man vom DragTree ein Element direkt in das Panel ziehen (nen Rahmen müsst ihr dem selber geben ). Allerdings fehlt noch das Objekt, was gesendet werden soll. Erzeugen kann man es mit dieser Klasse:
Code:
package de.lmprojects.konfigurator.dnd;

import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;

public class DnDObject implements Transferable {

    private String title;
    
    public DnDObject(String title) {
        
        this.title = title;
        
    }
    
    public String toString() {
        
        return title;
        
    }
    
    /* (non-Javadoc)
     * @see java.awt.datatransfer.Transferable#getTransferDataFlavors()
     */
    public DataFlavor[] getTransferDataFlavors() {
        // TODO Auto-generated method stub
        return null;
    }

    /* (non-Javadoc)
     * @see java.awt.datatransfer.Transferable#isDataFlavorSupported(java.awt.datatransfer.DataFlavor)
     */
    public boolean isDataFlavorSupported(DataFlavor flavor) {
        // TODO Auto-generated method stub
        return false;
    }

    /* (non-Javadoc)
     * @see java.awt.datatransfer.Transferable#getTransferData(java.awt.datatransfer.DataFlavor)
     */
    public Object getTransferData(DataFlavor flavor)
            throws UnsupportedFlavorException, IOException {
        // TODO Auto-generated method stub
        return this;
    }
}
Die meisten Kommentare habe ich entfernt. Natürlich ist alles zur freien Verfügung.
Für Anregungen, Fragen oder sonstige Kritik bin ich offen.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 22:52   Nach oben    #12
Java17
Gast
 
Beiträge: n/a
Standard

Hallo Stephan, Lars und alle die mir helfen,

danke dir Stephan und allen anderen für die Tipps, doch es ist mir noch schleierhaft, wie ich unter
2D Graphics meine 4 Button hintereinander bzw " gleichzeitig " auf dem Panel zeichnen soll. Zu meinem Verständnis. Es heißt:"

Jedesmal, wenn eine Komponente neu gezeichnet werden soll, wird die Methode paint() automatisch vom Interpreter aufgerufen. Ein Aufruf von paint() erfolgt z. B. immer dann, wenn eine Komponente neu am Bildschirm dargestellt wird. Die paint()-Methode bekommt das Graphics-Objekt übergeben:
public void paint(Graphics g) "

Das bedeutet doch, dass ich nur eine paint Methode habe, die beim Neuzeichnen des Panels immer wieder aufgerufen wird.

Ich habe aber 4 unterschiedliche Button die auf ein und derselben Zeichenfläche auftauchen sollen, je nach anklicken.

Wie kann ich angeben, welcher Button gerade zu zeichnen ist?
Jeder der 4 Button hat einen unterschiedlichen Aktionsempfänger. z.B:

class ProtAction implements ActionListener {

public ProtAction() {}
public void actionPerformed(ActionEvent event) {
//Position der Maus hier abfragen??????
// und dann Panel und Button hier zeichnen mit
drawImage() wäre doch ungeschickt oder,?? weil beim nächsten Aufruf des anderen Button doch wieder erneut ein neuer Panel und Button gezeichnet wird und diesen hier überspielen würde, ist doch so, oder????????
}
}

Genauso habe ich 4 Buttonobjekte, die so aussehen: //diese möchte ich in der Form, erst kurz vor dem Zeichnen des Button ins Panel, benutzen.


class OpAdapter{

private ImageIcon image;
private String name; // kennzeichnet das objekt und soll vor dem Zeichnen auf dem Panel von HAnd per Abfrage eingegeben werden
private int positionX; //wohin gezeichnet werden soll und anschließend die Position des Button
private int positionY;

public OpAdapter() {
this.image =( new ImageIcon ("icons/PrIcon.gif"));
}
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
public void setPosition(int positionX, int positionY){
this.positionX = positionX;
this.positionY = positionY;
}

public int getPositionX(){
return positionX;
}
public int getPositionY(){
return positionY;
}

}

Ich bin einfach ratlos. Kannst/könnt du/ihr mir weiterhelfen?
Ich wäre dir/euch wirklich sehr dankbar.

Einen ganz lieben Gruß
JAsmin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.03.2005, 23:13   Nach oben    #13
Neuer Benutzer
 
Benutzerbild von dyrathror
 
Registriert seit: 17.03.2005
Beiträge: 18
Standard

Hallo Jasmin,

ich glaube, ich habe bisher noch nicht so ganz begriffen, wie das Ergebnis Deiner Arbeit aussehen soll. Ich bin jetzt, wie der Lars wahrscheinlich auch, davon ausgegangen, daß Du auf der linken Seite ein Panel mit Buttons oder Objekten haben willst, die Du per DnD oder ähnlichem auf ein rechts angeordnetes Panel befördern willst auf dem dann Dein Objektgraph entstehen soll.

Wenn dem so ist, kannst Du links ein ganz normales JPanel benutzen und nur dort, wo Du die Graphik erstellst, benutzt Du ein Canvas oder ähnliches und arbeitest mit dem GraphicsContext.

Aber ehrlich gesagt habe ich im Moment noch ein ziehmlich großes Fragezeichen im Gesicht. Eine kleine Zeichnung o.ä. würde vielleicht weiterhelfen

Gruß
Stephan
dyrathror ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 30.03.2005, 15:29   Nach oben    #14
Java17
Gast
 
Beiträge: n/a
Standard

Hallo Stephan,

Ich habe oben eine Menübar und darunter meine Buttons aufgelistet.
Toolbar und Menübar sind in der
class MenuFrame extends JFrame, auch das JPanel() ist hier plaziert.
Nachdem ich nun auf ein Button klicke komme ich zu meinem Actionsempfänger, außerhalb der Klasse MenuFrame.
Und hier beginnt mein Problem. Ich kann ja nicht bei jedem Klick auf dem Button ein neues Panel zeichnen. Wie komme ich von meinem Aktionsempfänger zu meinem Panel und zur individuellen Buttonzeichnung??
Alle Buttons müssen/sollen doch auf einen Panel kommen um anschließend miteinander durch Linien verbunden zu werden.
Die einzelnen Button sollen, wenn diese ihren Namen erhalten haben,
auch verschiebbar sein.
Wenn nun Button1(NameX) und Button1(´NameY) durch die
Linie verbunden sind, soll wieder eine Action stattfinden.

Soll ungefähr so aussehen:
----------------------------------------------------------
Datei (JMenubar)
----------------------------------------------------------

BildButton1 || BildButton2|| BildButton3 || "Button"---> || (Toolbar)
----------------------------------------------------------
( JPanel)
BildButton1 || BildButton1|| BildButton2
(Name X) -----> (Name Y) ----->(NameA)
|
|
BildButton3
( Name D)
-------------------------------------------------------------

wie stelle´ich das an?
Kannst du/könnt ihr mir helfen??

Einen ganz lieben Gruß
Jasmin
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.04.2005, 23:39   Nach oben    #15
Neuer Benutzer
 
Registriert seit: 02.09.2004
Beiträge: 22
Standard Nur Ereignisse

Hallo!

Wenn ich richtig verstanden habe, dann soll da so was wie Viso oder PowerPoint bei rauskommen!?
Wieso muss es ein Button sein?? (Andere Komponenten würden setDragEnabled() unterstützten, dann könntest Du nur auf die Ereignisse reagieren und Dir Transferable sparen - nicht sehr schön, aber könnte klappen)

Aber ich denke das Problem hat nur vordergründig was mit DnD zu tun.

MfG!
Franz
franz77 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 05.05.2005, 10:59   Nach oben    #16
iwankoenig
Gast
 
Beiträge: n/a
Standard

Moin!
ich habe da folgendes Problem: Ich moechte die Funktionsweise von Drag and Drop ein bisschen näher kennenlernen, dafür brauche ich gute Literatur möglichst online, kostenlos und auf deutsch (da ich Probleme mit Englisch habe). Ich habe versucht das oben genannte Beispiel umzusetzen. Habe geschafft, aber das bringt mich nicht weiter. Brauche mehr Theorie.
Also meine Frage lautet: Wo kann ich solche Literatur im Netz finden?
Ich bedanke mich im voraus.
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Drag & drop - images risa Desktop-Applikationen und Grafik 4 28.05.2006 15:48


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:15 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44