Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Delphi - muovere un oggetto
Forum - Delphi - muovere un oggetto

Avatar
systemgvp (Normal User)
Expert


Messaggi: 296
Iscritto: 14/04/2008

Segnala al moderatore
Postato alle 22:40
Mercoledì, 03/02/2010
Salve, Utilizzo Delphi 2010.

Simulare il movimento di un oggetto, che supponiamo essere un bottone o meglio una serie di bottoni posti sul form.
Li faccio muovere, incrementando la loro posizione di una certa quantità.

Il problema però è che se metto la procedura in un ciclo for, dove esegue delle operazioni per determinarne la posizione, e sempre nello stesso ciclo la funzione che lo deve muovere, NON MI FA VEDERE IL MOVIMENTO, ma me lo piazza dierettamente alla posizione finale, Perchè?

Perchè nasconde "all'utente" i passaggi "dell'elaborazione" ?

:grr:

PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 22:54
Mercoledì, 03/02/2010
Devi mettere:

Application.ProcessMessages;

subito dopo il movimento altrimenti il sistema procede senza mostrare i cambiamenti

PM Quote
Avatar
systemgvp (Normal User)
Expert


Messaggi: 296
Iscritto: 14/04/2008

Segnala al moderatore
Postato alle 11:48
Giovedì, 04/02/2010
grazie, è rimasto solo un problema, non mostra proprio l'elemento ma la forma dell'elemento del colore del form.

PM Quote
Avatar
systemgvp (Normal User)
Expert


Messaggi: 296
Iscritto: 14/04/2008

Segnala al moderatore
Postato alle 12:13
Giovedì, 04/02/2010
un altro problema, più serio, al primo avvio funziona tutto perfettamente, ma quando riavvio il codice per la seconda volta, es.:

//...
//disegna veicoli
    MenuGEN.DisegnaVeicoliVirtualiClick(Sender);
    Application.ProcessMessages;
//...

Mi da errore! "raised exception class EInvalidPointer with message 'Invalid pointer operation'" e non capisco perchè l'errore me lo mostra in Application.ProcessMessages;

PM Quote
Avatar
Alfonso (Ex-Member)
Guru


Messaggi: 688
Iscritto: 30/09/2009

Segnala al moderatore
Postato alle 12:22
Giovedì, 04/02/2010
Per la prima domanda è stato semplice, anche se non conosco Delphi.
Per le altre domande aspetta le risposte di un esperto.

PM Quote
Avatar
systemgvp (Normal User)
Expert


Messaggi: 296
Iscritto: 14/04/2008

Segnala al moderatore
Postato alle 11:18
Venerdì, 05/02/2010
il problema dell'errore l'ho risolto, perchè l'errore era in un Array altrove.

Resta però il problema che l'elemento che si muove è trasparente, o meglio la forma è la sua, ma assume il colore di ciò che ci ha sotto

PM Quote