Autore Topic: [RISOLTO] Spostare un carattere con il mouse  (Letto 1314 volte)

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
[RISOLTO] Spostare un carattere con il mouse
« il: 02 Settembre 2010, 10:02:07 »
Come poter spostare un carattere (ad esempio la lettera "a") con il mouse da un punto ad un altro all'interno di una DrawingArea ?
« Ultima modifica: 03 Settembre 2010, 12:51:20 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Spostare un carattere con il mouse
« Risposta #1 il: 02 Settembre 2010, 11:09:09 »
 ??? ??? ???

Se è in una DrawingArea, il carattere è in pratica un disegno.

Se hai le coordinate dell'oggetto, con gli eventi DrawingArea_Mouse(Up/Down/Move) devi gestirti il movimento. Questo è il giochetto su cui si basa anche pgDesigner (scusa per la pubblicità, ma è per fare un esempio...).

Tutto quanto ho detto, se ho compreso bene la tua domanda.

Se ti servono ulteriori ragguagli, chiedi pure.

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: Spostare un carattere con il mouse
« Risposta #2 il: 02 Settembre 2010, 18:28:15 »
visto che certa gentaglia fa solo pubblicita e non ti da la soluzione, di do un aiuto io  ;D
nel mio programma gesthotel... ops scusa la pubblicità ....
cmq una lettera come qualsiasi testo in una drawing area si disegna con

draw.text(testo,x,y)

quindi se vuoi spostarla dovrai disegnare lo sfondo e poi la lettera cambiandogli la posizione, usando come suggerito da md.... eventi tipo DrawingArea_Mouse(Up/Down/Move) o altri

il tutto è molto semplicistico ma può esserti utile per capire in cosa ti stai infilando  :P
« Ultima modifica: 02 Settembre 2010, 18:29:48 da fsurfing »

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Spostare un carattere con il mouse
« Risposta #3 il: 03 Settembre 2010, 11:17:29 »
Oppure, come si faceva sui computer che non avevano gli sprite (vedi il mio vecchio C16 oppure il GW-BASIC) si riscriveva il testo con il colore di sfondo nell'esatta posizione del precedente, in modo da "cancellarlo" pixel per pixel, e poi si scriveva nella nuova posizione riusando questa volta il colore principale.  :coder:
Visita il mio sito personale: http://www.leonardomiliani.com

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Spostare un carattere con il mouse
« Risposta #4 il: 03 Settembre 2010, 12:40:05 »
ehehehe, bella leo... questo è valido se non esistono altri oggetti, altrimenti sei costretto a ridisegnarti tutta la drawing...

Purtroppo in Gambas non esiste modo di fare altro, a differenza di altri linguaggi che hanno la possibilità di gestire i layer, e gli oggetti che ci disegni in modo indipendente...

Comunque, non è un grosso problema con aree di disegno relativamente piccole... è abbastanza veloce...

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Spostare un carattere con il mouse
« Risposta #5 il: 03 Settembre 2010, 12:50:32 »
...può esserti utile per capire in cosa ti stai infilando  :P

...e non nel senso "migliore" ! Ahimé !   :-X
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: [RISOLTO] Spostare un carattere con il mouse
« Risposta #6 il: 03 Settembre 2010, 17:41:48 »
ehehehe, bella leo... questo è valido se non esistono altri oggetti, altrimenti sei costretto a ridisegnarti tutta la drawing...

Purtroppo in Gambas non esiste modo di fare altro, a differenza di altri linguaggi che hanno la possibilità di gestire i layer, e gli oggetti che ci disegni in modo indipendente...

Comunque, non è un grosso problema con aree di disegno relativamente piccole... è abbastanza veloce...

Infatti, se ho capito bene, con Gambas3 la cosa se puo' fa'.
Allego esempio. :)


Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: [RISOLTO] Spostare un carattere con il mouse
« Risposta #7 il: 06 Settembre 2010, 15:50:49 »
Non posso vedere il tuo esempio, per adesso, ma se la tua affermazione è vera, la versione 3 in questo ambito fà un enorme balzo in avanti.

...devo provare assolutamente... solo che le prove di conversione di pgDesigner mi stanno rompendo, sono troppe le differenze e le cose che ancora non funzionano... mannaggia... devo provare a fare qualche prova esterna...

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: [RISOLTO] Spostare un carattere con il mouse
« Risposta #8 il: 07 Settembre 2010, 17:14:47 »
E' vero. sembrano sprite XD
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Pixel

  • Amministratore
  • Maestro Gambero
  • *****
  • Post: 414
    • Mostra profilo
    • http://www.gambas-it.org
Re: [RISOLTO] Spostare un carattere con il mouse
« Risposta #9 il: 08 Settembre 2010, 09:34:17 »
Confermo l'intuizione di Milio. Con G3 la cosa è altamente fattibile.

Però non esaltatevi subito, la "potenza di fuoco" grafica è aumentata esponenzialmente rispetto a G2 ma alcune cose si devono fare ancora con vecchi sistemi (esempio un platform game), di contro la velocità di elaborazione di G3 è talmente aumentata che la fluidità è decisamente migliorata anche con le "vecchie" tecnologie.
Ubuntu Italian Member Ubuntu User 4683
Il mio Blog