Oppure

Loading
09/03/10 21:05
fabriziorocca
Sono alla presa con un programma particolare... e mi servirebbe un aiuto in questo.
Infatti stò creando un bottone che quando viene premuto praticamente deve fare un click su precise coordinate (x=16 e Y=34) di un elemento (in questo caso un webbrowser).
Ho già provato dei codici a caso ma non ci sono riuscito.
Qualcuno saprebbe darmi una mano ?
aaa
10/03/10 7:46
Thejuster
serve anche l'altezza e la larghezza del controllo per essere piu precisi.


int MouseX; //cordinate mouseX;
int MouseY; //cordinate mousey;

int Width = 100; //larghezza controllo
int Height = 20; //altezza controllo
int CX; //cordinate X controllo
int CY; //cordinate Y Controllo

//al click

if(MouseX > CX && MouseX < Width && MouseY > CY && MouseY < Height) {

//evento click nelle cordinate del controllo

}




mire.forumfree.it/ - Mire Engine
C# UI Designer
10/03/10 20:33
fabriziorocca
Non funziona, ho provato a sostituire a "Mouse" il nome dell'elemento, e ho messo le giuste coordinate, poi non ho capito cosa devo mettere in "//evento click nelle cordinate del controllo"
aaa
11/03/10 8:32
Thejuster
Ti assicuro io che funziona.

questo e un semplice esempio dell'algoritmo che ho usato
per cliccare su ogni quadratino di una griglia disegnata in directX.
quindi sono piu o meno sui 1280 quadratini 32x32 posizionate in aree diverse.

questa parte


if(MouseX > CX && MouseX < Width && MouseY > CY && MouseY < Height) { 

//evento click nelle cordinate del controllo 

} 



Guarda l'immagine.

Indica che quando il mouseX e > del punto di partenza del controllo ma NON supera la larghezza, uguale per l'altezza.. esegue quella funzione.

esempio

ControlloX = 10
ControlloY = 10
ControlloW = 100 (largezza)
ControlloH = 30 (altezza)

Mouse

Mx = 80 ( posizione del mouse X e a 80
My = 150 (posizione del mouse Y e a 150

se ora provassi a cliccare non succederebbe nulla perchè Y del mouse e fuori dalla portata del controllo supera i 30 che sarebbe l'altezza del controllo
mentre rientrebbe nella larghezza,

per farlo funzionare quella funzione, non sò.
devi saperlo tu dove applicarla.
di solito viene inserita in un ciclo continuo. per verificare se viene cliccato in quell'area.
mire.forumfree.it/ - Mire Engine
C# UI Designer
11/03/10 9:16
Alfonso
Secondo me hai bisogno di questo:

pierotofy.it/pages/guide_tutorials/Visual_Basic/Simulare_mouse=down_su_pulsante/

È in vb6 ma è semplicissimo adattarlo a vb.net
aaa
15/03/10 20:16
fabriziorocca
Sarò io che sono tonto ma proprio non ci riesco.

Praticamente si tratta di far click nelle coordinate x=8 Y=10 di un webbrowser che si trova nell'angolo in alto a sinistra della form, ho già provato con il codice ma mi sottolinea degli errori (con colore blu)
aaa
17/03/10 22:26
walker93
devi ottenere le coordinate relative allo schermo come nel link di alfonso
poi ti basta fare:
'posiziono cursore
me.cursor.position = new point(coordinataX,coordinataY) 'oppure metti un punto
'per simulare pressione 
SendKeys.Send(Chr(Keys.LButton))
aaa
18/03/10 19:22
Il Totem
Coordinate x e y di Cursor.Position si riferiscono alle coordinate assolute (misurate sullo schermo intero). Per cliccare il punto (8, 10) del WebBrowser devi posizionare il mouse nel punto WebBrowser.PointToScreen(New Point(8, 10)).
aaa