Oppure

Loading
06/01/10 20:40
DaveDevil
Allora, il titolo può sembrare strano, ma vi spiego subito a cosa mi serve questa cosa e sono sicuro che capirete:

Ho un'immagine di sfondo (bmp) che altro non è che un cerchio nero per ora, ma voglio tenermi la possibilità di personalizzarlo senza toccare il programma)

ho un'altra immagine, detta lancetta (sempre in bmp) che pure questa va personalizzata.

mi interessa la possibilità di sovrapporre la lancetta allo sfondo principale, e fare in modo che questa possa ruotare (non a step di 90 gradi ovviamente)


sono proprio ignorante in materia, ma oltre a questo "tachimetro" mi vengono in mente altre centinaia di cose che potrebbero essermi utile sapendo come fare.

Vi ringrazio sin da ora per l'aiuto!!!
aaa
06/01/10 21:57
balto
Bè forse anzicchè usare un'immagine come lancetta, converrebbe utilizzare la classe Graphics, il cui metodo DrawLine può essere molto utile nel tuo caso se insieme ad esso utilizzi un timer: al tick del timer disegni la lancetta in una posizione diversa.
aaa
06/01/10 22:17
DaveDevil
certo così sarebbe più semplice, ma perdo completamente la possibilità di creare le frecce personalizzate!

metti che domani voglio disegnarci un fulmine:D
aaa
07/01/10 16:29
Il Totem
Il metodo Graphics.RotationTransform(x) esegue una rotazione di x gradi in senso orario (strano eh). Il metodo va posto prima delle operazioni di disegno, ma si applica a tutto ciò che viene disegnato successivamente. Per annullare le trasformazioni, penso che potresti impostare una rotazione di 0 gradi.
Dim G As Graphics

G.DrawImage(sfondo, ...)
G.RotationTransform(78.0)
G.DrawImage(lancetta, ...)

Può darsi che la trasformazione sia retroattiva, ma di questo non sono sicuro: dovresti fare una prova.
aaa
08/01/10 1:32
DaveDevil
grazie per il consiglio!

ma come posso fare per tenere su due "piani" diversi lo sfondo e la lancetta?
aaa
09/01/10 13:04
Il Totem
Il codice sopra non dovrebbe condizionare lo sfondo... Oppure no? Si ruota anche lo sfondo?
aaa