[JFWRus] цикл while

здравствуйте уважаемые подписчики.
из письма Руслана Усачева.
спасибо Руслан как всегда ваш пример работает. подскажите пажалуста как можно
иначе получить доступ к элементам комбо-списка в данном случае . ниже информация:
Note Capture
Handle = 5964416 = {5b0280}
Class = ComboBox
Type = Combo box
TypeCode = 2
SubtypeCode = 2
ControlID = 0
StyleBits = 0x56000413
WindowName = Translate from
HotKey =
Parent = 7144078 = {6d028e}
FirstChild = 0 = {0}
Prior = 0 = {0}
Next = 0 = {0}
WindowHierarchyX = 1
WindowHierarchyY = 5
WindowRect = (202,115)-(377,138)
controlAttributes = 0
HasTitle = 0
WindowDisabled = 0
WindowObscured = 0
WindowVisible = 1
Highlighted text:
russian
All Text Restricted:
graphic 548 russian graphic 152
All Text Inclusive:
graphic 548 russian graphic 152
****************************************
с уважением Леонид.
***
Это сообщение No 8882
было разослано для 511 участников дискуссионного листа
[JFWRus] цикл while
Доброго времени суток, Леонид.
Из сообщения от 23.09.2009 10:04:
Попробуйте с помощью MSAA.
Нижеприведенный код полагается на то,
что комбосписок уже развернут,
и содержит фокус.
После его завершения искомый элемент списка становится текущим.
Остальное зависит от контекста задачи
и, собственно, к теме вопроса не имеет отношения.
Include "msaaconst.jsh"
; ...
Const
SearchString="russian"
; ...
Var
Object CmbList,
Int CmbChild,
Int i
; ...
Let CmbList= GetFocusObject (CmbChild)
Let i = 0
While i < CmbList.accChildCount
Let i = i + 1
If CmbList.accName(i) == SearchString Then
CmbList.accSelect (SELFLAG_TAKEFOCUS | SELFLAG_TAKESELECTION, i)
Let i = CmbList.accChildCount
EndIf
EndWhile
С уважением, Руслан Усачев
***
Это сообщение No 8884
было разослано для 511 участников дискуссионного листа
[JFWRus] Re: цикл while