Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Listbox & TextBox / 10 сообщений из 10, страница 1 из 1
02.05.2007, 11:47
    #34499172
allion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
Здравствуйте!
В общем ситуация обстоит так: есть листбокс, в нем расположен
список клиентов и текстбокс- все на одной форме. Нужно чтобы при вводе
в текстбокс первой-первых букв имени клиента,в листбоксе искался этот
клиент и в текстбокс переносилось имя клиента.
Вторая проблема: запросом из нескольких таблиц выбираю инфу о клиенте
нужно ее передать в ворд в таком формате:
Название: ООО Конфеты
Директор: Иванов
Адрес: Вытутина 38, кв 6
и т.д.
Пожалуйста помогите, чем сможите. Нигде подобного не могу найти
...
Рейтинг: 0 / 0
02.05.2007, 12:24
    #34499270
allion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
Ни у кого даж соображений нет?
...
Рейтинг: 0 / 0
02.05.2007, 12:31
    #34499292
Listbox & TextBox
allionЗдравствуйте!
В общем ситуация обстоит так: есть листбокс, в нем расположен
список клиентов и текстбокс- все на одной форме. Нужно чтобы при вводе
в текстбокс первой-первых букв имени клиента,в листбоксе искался этот
клиент и в текстбокс переносилось имя клиента.
Вторая проблема: запросом из нескольких таблиц выбираю инфу о клиенте
нужно ее передать в ворд в таком формате:
Название: ООО Конфеты
Директор: Иванов
Адрес: Вытутина 38, кв 6
и т.д.
Пожалуйста помогите, чем сможите. Нигде подобного не могу найти

По первому вопросу:
MSDN по ListBox
IncrementalSearch Property

Specifies whether a control supports an incremental search for keyboard steering. Available at design time and run time.

Syntax

Control.IncrementalSearch[ = lExpr]

Settings

lExpr


The settings for the IncrementalSearch property are:

Setting Description
True (.T.) (Default) Supports incremental search.
False (.F.) Does not support incremental search.


Remarks

An example of an incremental search is if you are searching for the word "ELASTIC," you can type E-L-A, and so on. As you type, Visual FoxPro incrementally searches for the combination of letters you have typed to match the word you are looking for. Otherwise, it finds the first word that starts with an E, then the first word that starts with an L, and so on.

Note that the setting of the _DBLCLICK system variable determines how long to wait for the next letter to be typed. You may need to adjust the value of _DBLCLICK to make incremental searching work properly.


По второму вопросу поищи на форуме. Много раз обсуждалось... Основная идея: поднимаем Word как COM-объект и "дергаем" его методы для создания необходимого документа и наполнения его содержимым...
...
Рейтинг: 0 / 0
02.05.2007, 12:32
    #34499293
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
1) Искать данные надо не в объектах формы, а непосредственно в таблицах. Т.е. поиск надо осуществлять в таблицах-источниках, наполняющих ListBox.

1а) Как Вы себе представляете сам процесс? Пользователь нажал букву "А" и ему тут же отобразил ПЕРВОЕ найденное слово, начинающееся с буквы "А". А он еще не закончил ввод! Он пытается стереть отображенное слово, а оно выскакивает сразу после удаления любой буквы. Как он вообще собирается что-то там искать, если описанный алгоритм просто не даст ему полностью ввести искомое слово?

Кроме всего прочего, инкрементный поиск и так есть в самом ListBox. Достаточно перевести фокус на него и начать набирать первые символы искомого слова.

2)

Как мне вывести данные в существующий MS WORD документ
...
Рейтинг: 0 / 0
02.05.2007, 13:10
    #34499423
allion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
ВладимирМ, может я не так задачу сформулировал.
Есть листбокс, в нем например 4 значения:
ЗАО Консалтинг
ООО Трансплюс
ЗАО Конструктор
ЗАО Консервант
Так вот, при вводе в текстбокс "З" в листбоксе курсор должен установиться на ЗАО Консалтинг, затем вводим "ЗАО", пробел затем "Конс" он установится на тот же ЗАО Консалтинг, затем вводим
"Конст" и курсор уже должен оказаться на ЗАО Конструктор, а в текстбоксе у нас написано "ЗАО Конст". Вот что мне нужно.
...
Рейтинг: 0 / 0
02.05.2007, 15:49
    #34499935
po2
po2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
Держи пример. Spinner используется для регулировки величины задержки перед началом поиска при наборе в символов в TexBox'е
...
Рейтинг: 0 / 0
02.05.2007, 15:51
    #34499943
allion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
спасибо, po2
...
Рейтинг: 0 / 0
02.05.2007, 17:06
    #34500170
allion
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
po2Держи пример. Spinner используется для регулировки величины задержки перед началом поиска при наборе в символов в TexBox'е

Так-то все работает, но когда компилишь ехешник - эффекта ноль
Что может быть?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
05.04.2012, 17:14
    #37740696
mvg54
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
po2,

Здравствуйте!
Во-первых, спасибо за пример программы ( http://www.sql.ru/forum/actualthread.aspx?tid=424741).
Я стал перерабатывать свои АРМы с FPD26 на VFP9 и начал с поискового кубика. Ваш код практически делает все, что мне было нужно. Разбирая, застопорился на одном месте. Не подскажете, что означает:
PROCEDURE text1.KeyPress
lPar nKeyCode,nShiftAltCtrl
do case
case nKeyCode = 13.and. nShiftAltCtrl = 0
NoDefault
ThisForm.Release(iif(ThisForm.List1.ListCount>0,;
ThisForm.List1.ListItem(1),;
''))

case nKeyCode = 24.and. nShiftAltCtrl = 0
NoDefault
ThisForm.List1.SetFocus()
keyboard '{DNARROW}' plain
endcase
ENDPROC

Меня интересует то, что выделено, и даже не то, что является результатом iif, -это я понял. Я не понял, как это работает в ThisForm.Release Не нашел описания ни в хелпах, ни на форумах.

С Уважением, Владимир
...
Рейтинг: 0 / 0
07.04.2012, 20:47
    #37743325
po2
po2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Listbox & TextBox
mvg54,
Пять лет! Личный рекорд. Ерунда там написана. При таком коде в метод Release формы по нажатию Enter будет всегда передаваться первая позиция списка, потому правильнее будет заменить ThisForm.List1.ListItem(1) на ThisForm.List1.DisplayValue
В примере код метода Release никак не модифицирован, задумывалось похоже следующее:
Код: sql
1.
2.
3.
4.
para cItem
  if!empt(cItem)
wait wind cItem &&какие-то действия с выбранной позицией списка
endi
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Listbox & TextBox / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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