|
|
|
| кому-то удалось заюзать выпадающий список(dropdown list/combobox) в subj? | |
|
| |
|
|
|
| есть код...
Private Sub Spreadsheet1_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
Dim dx&, dy&
Select Case Spreadsheet1.Tag
Case "CLT_TUNE"
If tgt.Column = 4 And tgt.Row > 1 Then '-- если колонка та, что нужно ;) D
'-- обновить данные в ListBox
dx = Me.ScaleX(tgt.Columns(tgt.Column).Left, vbPixels, vbTwips)
dy = Me.ScaleY(y, vbPixels, vbTwips)
'tgt.Rows(tgt.Row).Top + _
(GetSystemMetrics(SM_CYMENUSIZE) + _
GetSystemMetrics(SM_CXBORDER) + _
GetSystemMetrics(SM_CYCAPTION))
' dx = Round(x * Screen.TwipsPerPixelX)
' dy = Round(y * Screen.TwipsPerPixelY) '+_
' (GetSystemMetrics(SM_CYMENUSIZE) + _
' GetSystemMetrics(SM_CYMENU) + _
' GetSystemMetrics(SM_CXBORDER) + _
' GetSystemMetrics(SM_CYCAPTION))
'Me.List1.Width = 0 '-- говорят, так надо, чтобы правильно ширина
ListRequest Me.List1, "select f.description from fin.CLT_UKRUP_GRP f order by IDGRP"
Me.List1.Left = dx
Me.List1.Top = dy
Me.List1.Width = Me.ScaleX(tgt.Width, vbPixels, vbTwips)
Me.List1.Visible = True
Else
StatusBar1.Panels(1).Text = ""
Me.List1.Visible = False
End If
Case Else
StatusBar1.Panels(1).Text = ""
Me.List1.Visible = False
End Select
StatusBar1.Panels(1).Text = tgt.Address & " (" & _
tgt.Height & ":" & _
tgt.Width & ") " & _
"X" & Round(x) & ":" & "Y" & y & _
" L" & (tgt.Columns(tgt.Column).Left) & _
":T" & (tgt.Rows(tgt.Row).Top) & _
" dX=" & dx & " dY=" & dy
End Sub
|
в частности не понятно, почему координаты X и Y, возвращаемые событием,
существенно отличаются от tgt.Columns(tgt.Column).Left и tgt.Rows(tgt.Row).Top?
никак не удается отпозиционировать листбокс четко по левой границе и внизу ячейки выбранной ячейки в SpreadSheetе...
у кого какие идеи? | |
|
| |
|
|
|
| понятно. это не тот Left... это вообще левый Left
ну мастдайщики, погодите! | |
|
| |