< návrat zpět
MS Excel
Téma: OnMouse
Zaslal/a Koci 28.4.2010 12:08
Ahoj,
řeším tu takový problém a nemohu se dopátrat nějakého řešení.
Mám UserForm, na kterým je přidán Image a do toho se nahraje fotka o max její velikost. UserForm je však je menší nže samotná fotka a tak jsem přidal scrollbary na pousouvání po fotce.
Je ale nepříjemné, když jediný posun po velké fotce je pomocí dvou barů : / Je možné nějak nastavit ScrollBaru Left a Top hodnotu pomocí držení levého tlačítka na myši a pohybování s fotkou do stran, jako tomu bývá u různých galerií a případným zoomům?
Stačilo by mě poštouchnout, jakou funkci zvolit, zbytek bych si nějak vymyslel a ozkoušel Popřípadě jak zajistit pohyb scrollbaru přes kolečko na myši.
Jeza.m(28.4.2010 21:25)#001566 Ahoj, zkus tohle:
Dim xpos As Single
Dim ypos As Single
Dim indicator As Single
Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
xpos = X
ypos = Y
indicator = 1
End Sub
Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If indicator = 1 Then
Image1.Left = X - xpos + Image1.Left
Image1.Top = Y - ypos + Image1.Top
End If
End Sub
Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
indicator = 0
End Sub
M@
citovat
Koci(29.4.2010 7:43)#001570 Fíha,
přesně tohle jsem potřeboval, akorát potřebuju hýbat s Scrollbarama na UserForm. Při pohybu se samotným image1 to dělá trochu neplechu v mém už hotovém "prográmku". Nicméně je to pro mě jako rada plně dostačující, už si to upravím dle potřeb, jen jsem potřeboval poštouchnout. Děkuji!!!
citovat