Страница: 1 |
Страница: 1 |
Вопрос: MSFlexGrid - поиск и переход к строке
Добавлено: 27.12.06 14:03
Автор вопроса: vic | Web-сайт:
Скажите, как в MSFlexGrid (VB6) перейти к определенной строке с ее выделением? И еще есть ли в FlexGrid встроенные средства для поиска? То что я делаю наверное неправильно:
Dim vstr As Long 'всего строк
Dim SearchChar As String 'что ищем
Dim SearchString As String 'где ищем
SearchChar = cboEngSN.Text 'образец для поиска
vstr = FG1.Rows - 1 'количество строк
For zk = 1 To vstr
SearchString = FG1.TextArray(2 + (zk * 7)) 'перебираем ячейки второго столбца
If InStr(SearchString, SearchChar) <> 0 Then
MsgBox zk 'Ура нашли! НО ВОТ КАК ПЕРЕЙТИ К НАЙДЕННОЙ СТРОКЕ С ВЫДЕЛЕНИЕМ ЕЕ?
Exit Sub
End If
Next
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
avdey
ICQ: 219571279
Вопросов: 34
Ответов: 486
Профиль | | #1
Добавлено: 27.12.06 14:52
И попробуй в свойствах SelectionMode поставь SelectionByRow...
Номер ответа: 2
Автор ответа:
vic
Вопросов: 2
Ответов: 4
Web-сайт:
Профиль | | #2
Добавлено: 27.12.06 17:01
Я так уже пробовал - выделение вообще пропадает.
Номер ответа: 3
Автор ответа:
avdey
ICQ: 219571279
Вопросов: 34
Ответов: 486
Профиль | | #3
Добавлено: 28.12.06 07:58
Оно не пропадает. Когда в Экселе выделяешь много ячеек они все синие, кроме одной, но она тоже выделена, хотя и не синяя. Вот и в этой таблице такая же штука...
Попробуй добавь этот код:
Const KEYEVENTF_KEYUP As Short = &H2S 'событие отпускания клавиши
Const VK_DOWN As Short = &H28S
И вот так:
Call keybd_event(VK_DOWN, 0, 0, 0)
Call keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0)
Exit For
Номер ответа: 4
Автор ответа:
vic
Вопросов: 2
Ответов: 4
Web-сайт:
Профиль | | #4
Добавлено: 28.12.06 09:44
Константы у меня VB6 не принимает... Это не NET синтаксис?
Номер ответа: 5
Автор ответа:
Djon
Вопросов: 61
Ответов: 471
Web-сайт:
Профиль | | #5
Добавлено: 28.12.06 09:59
А что в VB используют Short?
Номер ответа: 6
Автор ответа:
vic
Вопросов: 2
Ответов: 4
Web-сайт:
Профиль | | #6
Добавлено: 28.12.06 11:37
Как бы вышеприведенный код на NET перевести на VB?
Номер ответа: 7
Автор ответа:
avdey
ICQ: 219571279
Вопросов: 34
Ответов: 486
Профиль | | #7
Добавлено: 29.12.06 14:25
Мда, попутал...
вот попробуй на 6 басике:
Const KEYEVENTF_KEYUP = &H2 'ñîáûòèå îòïóñêàíèÿ êëàâèøè
Const VK_DOWN = &H28
Номер ответа: 8
Автор ответа:
avdey
ICQ: 219571279
Вопросов: 34
Ответов: 486
Профиль | | #8
Добавлено: 29.12.06 14:26
Зеленое не копируй.