Körde fast :-(. Försöker styra ett fristående program med min liten application. Grejen är att comboboxen i detta programmet skall öppnas automatiskt med rätt rad markerad. Lyckades öppna den comboboxen , lista ut listIndex för denna rad "Chennel A". Men hur kan jag göra att den rad blir markerad? <code>SendMessage
Del av koder ser ut så här
FocusTo CLng(ChildHWnds(2))' det är den controll som är comboboxen
Sub FocusTo(hwnd As Long)
'öppnar comboboxen
lret = SendMessageAny(hwnd, CB_SHOWDROPDOWN, True, 0&)
'listar ut index för sökande string "channel A"
iInd = SendMessageString(hwnd, CB_FINDSTRINGEXACT, -1, "Channel A")
???????
end sub
Om jag skulle veta namnet på den comboboxen, skulle jag skriva Combo1.ListIndex = iInd
men det går inte i mitt fall, jag kan ju inte namnet på den comboboxen?
. Hur skall jag göra?Sv: SendMessage
Private Const CB_SHOWDROPDOWN = &H14F
Private Const CB_SELECTSTRING = &H14D
Sub FocusTo(hWnd As Long)
Dim lngDummy As Long
lngDummy = SendMessageAny(hWnd, CB_SHOWDROPDOWN, True, 0&)
lngDummy = SendMessageString(hWnd, CB_SELECTSTRING, -1, "Channel A")
lngDummy = SendMessageAny(hWnd, CB_SHOWDROPDOWN, False, 0&)
End Sub
</code>