Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / курсор и комбо / 2 сообщений из 2, страница 1 из 1
06.03.2009, 12:02
    #35855483
Imperous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
курсор и комбо
Есть форма, на ней комбо.
В инит формы пишу:
Код: plaintext
1.
2.
3.
4.
5.
6.
this.combo1.boundcolumn =  2 
this.combo1.boundto = .t.
this.combo1.rowsourcetype =  2 
this.combo1.rowsource = ""

Select name, id from tab1 into cursor cur_tab1
this.combo1.rowsource = cur_tab1

Теперь организовываю поиск при вводу в комбо, по нажатию "Enter" - искать.
В событии KeyPress моего комба вставляю текст:
Код: plaintext
1.
2.
3.
4.
5.
LPARAMETERS nKeyCode, nShiftAltCtrl
IF nKeyCode =  13  then
	SELECT cur_tab1
	LOCATE FOR left(UPPER(name), LEN(UPPER(ALLTRIM(this.Text)))) = UPPER(ALLTRIM(this.Text))
ENDIF 

Запускаю форму, вижу что курсор загрузился в комбо, пишу в комбо искомое слово, жму Энтер,
В Data Session открываю мой курсор cur_tab1 вижу что поиск сработал и стоит на необходимой строке.
Теперь вопрос - почему когда я нажимаю в комбо стрелку вниз чтоб открыть список, он открывается и стоит на первой записи, а не на той которую нашел поиск?
...
Рейтинг: 0 / 0
06.03.2009, 12:20
    #35855563
Imperous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
курсор и комбо
разобрался :)
надо так :

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
LPARAMETERS nKeyCode, nShiftAltCtrl
IF nKeyCode =  13  then
	SELECT cur_tab1
	LOCATE FOR left(UPPER(name), LEN(UPPER(ALLTRIM(this.Text)))) = UPPER(ALLTRIM(this.Text))

	IF FOUND()
		this.Value = cur_tab1.id
	ENDIF 
ENDIF 
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / курсор и комбо / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]