| |
 31 Кб. |
|
| | Привет всем !!!
Што нужно сделать штобы в форме при вводе первых букв в поле поиска - в списке оставались записи соответствующие введенным первым буквам.
Например ввожу букву "б" - остаются все слова на "б" - добавляю букву "о" - остаются все слова на "бо" - добавляю букву "р" - остаются все слова на "бор" и т.д.
На Кнопка15_Click() - все замечательно.
Почему не работает на Find1_Change(). Што нужно изменить.
Сам уже просто упарился
В приложении пример
Спасибо | |
| |
| |
| |
|
|
| | http://hiprog.com/index.php?option=com_content&task=view&id=606
так не пойдет? | |
| |
| |
| |
|
|
| | Наверное Вы имели ввиду "Пример ввода новой записи в список и поиска записи в списке". Тогда не догоняю где что фильтруется
Там где поиск ввожу сочетание букв из имени клиента - ничего не происходит ???  | |
| |
| |
|
|
| |
|
|
| | Понял
Но фишка в том што нужно фильтровать не выходя из поля просто при изменении набора букв в поиске.
Как это сделать ??? | |
| |
| |
| |
|
|
| | так же только работать с событием изменение и свойством TEXT | |
| |
| |
| |
|
|
| |
Private Sub Выключатель46_Click()
If Me.Выключатель46 = -1 Then
Me.Поле44.Value = ""
Me.Поле44.Visible = True
Me.Поле44.SetFocus
Else
Me.Поле44.Visible = False
DoCmd.ShowAllRecords
Me.OrderByOn = True
End If
End Sub
Private Sub Поле44_GotFocus()
Me.Поле44.SelStart = Len(Me.Поле44.Text)
End Sub
Private Sub Поле44_KeyUp(KeyCode As Integer, Shift As Integer)
DoCmd.ApplyFilter , "Фамилия like '" & Me.Поле44.Text & "*'"
End Sub
|
| |
| |
| |
| |
 32 Кб. |
|
| | Сделал так:
Private Sub Find1_Change()
Me.List1.Requery
Me.Refresh
End Sub
|
Вроде все нормально
но
при вводе буквы в поле поиск происходит выделение введннных букв в поле поиск
Как от этого уйти ???
В приложении пример | |
| |
| |
| |
 37 Кб. |
|
| | можно так | |
| |
| |
|
|
|
|
| |
|
|
| | хелп!
если такой записи нет в списке, то вылетает ошибка у меня  | |
| |
| |
|
|
| |
|
|
| | если я в поле поиска набираю фирму и эта фирма есть в списке, по которому собственно она ищется, то нет проблем
но если , к примеру, фирма "Рога и копыта" есть, а я набираю "Рога и кА, то выдает ошибку, выскакивает табличка MVB с кнопакми Енд и Дебуг
я так понимаю, собака зарыта в том, что нужна типа обработка ошибки что ли... | |
| |
| |
| |
|
|
| | нажми дебуг, посмотри куда выкинет | |
| |
| |
| |
|
|
| | аа...так выкидывает в
Me.Поле64.SelStart = Len(Me.Поле64.Text)
|
| |
| |
| |
| |
|
|
| | А что говорит то? какая ошибка? | |
| |
| |
| |
|
|
| | невозможно обратиться к свойству или методу элемента управления, пока на этот элемент не установлен фокус ввода | |
| |
| |
|
|
| |
 17 Кб. |
|
| | хм..хотел написать, что ничего не понятно
сваял свой кусок в А2003, чтобы прикрепить его к форуму
и что вы думаете???
в А2003 работает!!!
а в 2007-м выдает ошибку 
забыл написать, что помимо текста "невозможно обратиться к свойству или методу элемента управления, пока на этот элемент не установлен фокус ввода"
на табличке есть еще надпись
Run-Time error '2185'
 | |
| |
| |
| |
|
|
| | "невозможно обратиться к свойству или методу элемента управления, пока на этот элемент не установлен фокус ввода"
Перевожу с русского на русский
ПОка фокус находится в другом контроле (т.е. не в том к свойству которого вы обращаетесь) получить значение этого свойства (обратиться к свойству) - невозможно.
и остановка на строке:
Me.Поле64.SelStart = Len(Me.Поле64.Text)
Свойтсво "Text" поля доступно только когда в поле установлен фокус, т.е. нужно сначала установить фокус а потом обращаться к свойству:
Me.Поле64.Setfocus
Me.Поле64.SelStart = Len(Me.Поле64.Text)
|
| |
| |
| |
| |
|
|
| | не osmor
не работает
та же фигня происходит
пока набираемые буквы совпадают с теми, которые ищем - все нормуль
ну, ищу слово "АвангарД"
стОит мне в поле поиска писать "АванарТ", выдает дебуг
причем в 2003-м таких проблем нет | |
| |
| |
| |
|
|
| | проверил в 2007 Run-time (другого нет) все работает | |
| |
| |
| |
|
|
| | блин...
так..щас свой пример ковертну в 2007-й и посмотрю... | |
| |
| |
| |
|
|
| | у меня истерика щас будет
засосал сляпаную на скорую руку форму из примера в свою базу - работает!!!
на форме, в которой не работает поубивал все и скопировал со сляпаной формы код - не работает!
дайте мне парабеллум!!!  | |
| |
| |
| |
|
|
| | разобрался..блин
в свойствах формы, вкладка "Данные", "Разрешить добавление" поставил "Да"
я в свое время поубирал в конце ленточной формы пустые строки, т.к. список этот формируется в другом месте и чтобы менеджеры не тыкали в эту пустую строку и не пытались ввести новую фирму
а теперь эта строка понадобилась, поскольку, когда мы набираем в поле поиска слово, которого нет в списке, то в области данных не остается ни одной строки (даже пустой)
вот акс и орет - ошибка..ошибка...ошибка....
фух! | |
| |
| |
| |
|
|
| | может собака порыта в том, что у меня ленточная форма находится прямо в области данных, а не так, как вы привели чуть выше в примерах
у меня в области данных просто поле Название_Фирмы и все...
а в заголовке формы стоит это самое поле поиска | |
| |
| |
|
|
| |
 36 Кб. |
|
| | Посмотри приложенный пример
Я сделал немного по другому. Так не надо менять RowSource списка (это имеет опред.преимущества)
И ошибок никаких не происходит
Дешево и сердито  | |
| |
| |