Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Java SWT Drag and drop canvas

    Ciao a tutti,sono nuovo del forum !!
    Ho il seguente problema: ho una shell (SWT) in cui ci sono una serie di oggetti canvas(SWT). Come posso fare il drag and drop di questi canvas all'interno della shell?
    In pratica vorrei muovere questi canvas a mio piacimento all'interno della shell.
    Se è possibile potete postare del codice come esempio
    Grazie a tutti
    (Aiutatemi è molto importante)

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Re: Java SWT Drag and drop canvas

    Originariamente inviato da snapster
    Se è possibile potete postare del codice come esempio
    Veramente sarebbe il contrario: tu dovresti postare il codice di ciò che hai sviluppato e su quello chiedere lumi...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Metto questo codice come esempio:

    codice:
    import org.eclipse.swt.SWT;
    import org.eclipse.swt.dnd.DND;
    import org.eclipse.swt.dnd.DragSource;
    import org.eclipse.swt.dnd.DragSourceAdapter;
    import org.eclipse.swt.dnd.DragSourceEvent;
    import org.eclipse.swt.dnd.DropTarget;
    import org.eclipse.swt.dnd.DropTargetAdapter;
    import org.eclipse.swt.dnd.DropTargetEvent;
    import org.eclipse.swt.dnd.TextTransfer;
    import org.eclipse.swt.dnd.Transfer;
    import org.eclipse.swt.graphics.GC;
    import org.eclipse.swt.graphics.Point;
    import org.eclipse.swt.layout.GridData;
    import org.eclipse.swt.widgets.Canvas;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Shell;
    import org.eclipse.swt.widgets.Tree;
    
    public class EsempioCanvasConFreccia {
    	
    	public static void main (String[] args) {
    		Display display = new Display();
    	    Shell shell = new Shell(display);
    	    shell.setText("METAMODEL_VIEW");
    	    shell.setSize(1000, 700);
    	    shell.setLocation(0,0);
    	    
    	    Canvas canvas = new Canvas(shell, SWT.NONE);//canvas base che ricopre la shell
    	    canvas.setSize(1000, 700);
    	    canvas.setLocation(0, 0);
    	    
    	    final Canvas canvas1 = new Canvas (canvas, SWT.NONE);//canvas che voglio muovere a mio piacimento
    	    GridData gridData = new GridData();
    		gridData.horizontalAlignment = org.eclipse.swt.layout.GridData.END;
    		gridData.heightHint = -1;
    	    canvas1.setLayoutData(gridData);
    		canvas1.setSize(110,130);
    		canvas1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_DARK_GRAY));
    		canvas1.setLocation(50,50);
    		
    		shell.open();
    	    
    	    while (!shell.isDisposed()) {
    		      if (!display.readAndDispatch())
    		        display.sleep();
    		    }
    		   
    		    display.dispose();
    	}
    
    }
    In effetti l'oggetto "canvas1" che voglio poter muovere si trova sull'oggetto "canvas" che a sua volta è costruito sull'oggetto "shell".
    Spero di essere stato sufficentemente chiaro

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Moderazione

    Estratto dal regolamento:

    Formattazione del codice sorgente.

    Quando incollate una porzione di codice all'interno di un messaggio, utilizzate l'apposito tag
    [ CODE] codice [/ CODE]
    che può essere inserito automaticamente premendo il pulsante CODE: questo renderà il codice leggibile e facilmente comprensibile a tutti, agevolando gli utenti che desiderano aiutarvi.
    Ho corretto io...



    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.