Dummiel писал(а):2. При нажатии на кнопку мало того, что не выпускать его за пределы PictureBox-а (т.е., курсор м.б. или на PictureBox-е, или на кнопке, или на большом ImageBox-е, или на одном из 20 маленьких ImageBox-ов), а еще и заставить VB6 реагировать в это время на нажатие ПРАВОЙ клавиши мыши (левая нужна для кнопки - отключение ограничения позиции курсора).
Писать обработку Mouse_Down, Mouse_Up с учетом (If Button = vbRightButton) для каждого контрола из набора, или есть изящное решение в одну-две процедуры?
немного изменю вопрос, но смысл останется тем же (он меня тоже интересует). Как запретить перемещение курсора по экрану, за пределами определенных границ? Я видел в какй-то из библиотек такую функцию, а таскать за собой всю библиотеку из-за одной фунуции несподручно...При нажатии на кнопку необходимо не выпускать курсор мыши за пределы PictureBox-а, при повторном нажатии - пусть гуляет, где хочет. Как это сделать?
API-Guide писал(а):Private Declare Function BeginPath Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function EndPath Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function PathToRegion Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Sub Form_Click()
'end..
Unload Me
End Sub
Private Sub Form_Load()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
Dim hRgn As Long
Const sText = "Click Here!"
'set the font to 'Times New Romen, size 72'
Me.FontName = "Times New Roman"
Me.FontSize = 72
'set the backcolor to Red
Me.BackColor = vbRed
'open a path bracket
BeginPath Me.hdc
'draw the text
TextOut Me.hdc, 0, 0, sText, Len(sText)
'close the path bracket
EndPath Me.hdc
'convert the path to a region
hRgn = PathToRegion(Me.hdc)
'set the Window-region
SetWindowRgn Me.hWnd, hRgn, True
'destroy our region
DeleteObject hRgn
End Sub
Сейчас этот форум просматривают: Google-бот и гости: 179