Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Свойство Textbox.Text. глюки ?!! / 25 сообщений из 38, страница 1 из 2
20.04.2004, 09:41:55
    #32487234
nostra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
В форме имеются поля для ввода. При заполнении всех кнопка на добавление новой записи должна переходить в Enabled=True.
Пробовал так:

Private Sub ApplyEnable()
Dim bEnabled As Boolean

bEnabled = True
If Trim(txtTexty1.Text) = "" Then bEnabled = False
If Trim(txtTexty2.Text) = "" Then bEnabled = False
cmdOK.Enabled = bEnabled
End Sub

Далее в обоих полях на событие KeyUp вызываю эту процедуру.
В VB6.0 всё прекрасно работает, а VBA for Access выдает ошибку : "Фокус на поле не установлен".
...
Рейтинг: 0 / 0
20.04.2004, 09:47:48
    #32487240
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
If xtTexty1="" Then...
точнее, будет работать
if isnull(xtTexty1) then...

Свойство Text доступно, когда контрол имееет фокус
...
Рейтинг: 0 / 0
20.04.2004, 10:04:55
    #32487264
nostra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
2Alexander G
Да, с IsNull это хорошо.
Но осталась такая проблема. Свойство Enabled кнопки не сразу реагирует на
Sub Text1_KeyUp..Насколько я понимаю свойство Text изменяется, только когда теряешь фокус или сохряняешь значение поля. Сохрянять значение я не умею. Тогда, остается, при каждом нажатии кнопки убирать и вновь возвращать фокус в поле?
...
Рейтинг: 0 / 0
20.04.2004, 10:09:09
    #32487271
Sfagnum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Сохранение записи:
DoCmd.RunCommand acCmdSaveRecord

Сделать можно всё!!!
Только бы знать как...
...
Рейтинг: 0 / 0
20.04.2004, 10:09:20
    #32487272
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
хелп

Пока элемент управления имеет фокус свойство Текст (Text) содержит текст, который находится в элементе управления в текущий момент; свойство Значение (Value) содержит последние сохраненные данные. При переносе фокуса на другой элемент управления происходит обновление данных и в качестве значения свойства Значение (Value) устанавливается новое значение. После этого свойство Текст (Text) недоступно до тех пор, пока элемент управления не получит фокус вновь. Если для сохранения данных элемента управления использовалась команда Сохранить запись из меню Записи без переноса фокуса, то значения свойств Текст (Text) и Значение (Value) будут одинаковыми.
...
Рейтинг: 0 / 0
20.04.2004, 10:23:54
    #32487303
nostra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Видимо мой последний вопрос на сегодня.
Как переместить указатель на конец строки в поле.
Заранее спасибо..
...
Рейтинг: 0 / 0
20.04.2004, 10:27:58
    #32487315
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
ctlMy.SelStart = Len(ctlMy.Text)
...
Рейтинг: 0 / 0
20.04.2004, 10:32:26
    #32487327
nostra
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
2Alexander G
Сделал тоже самое но на минуту позже....но сам :))
Думал никогда не сделаю проверку в полях формы...
...
Рейтинг: 0 / 0
20.04.2004, 11:36:15
    #32487463
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Меньше 9 минут. Хорошо. Я в свое время дольше ковырялся. Но мне простительно, я старый... :)
...
Рейтинг: 0 / 0
01.07.2004, 12:03:06
    #32584851
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
В продолжение старой темы...

На форме 3 комбокса для фильтрации в подчинённой форме по 3 полям и поле ввода для фильтрации там же по подстроке.

Фильтрация зашита в запрос для подч. формы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT T.ID, T.Name AS Наименование
FROM dbo_Table1 AS T
WHERE ([Forms]![frmForm1]![cmb1] In ( 0 ,T.Field1)) 
	And ([Forms]![frmForm1]![cmb2] In ( 0 ,T.Field2))	
	And ([Forms]![frmForm1]![cmb3] In ( 0 ,T.Field3)) 
	And (([Forms]![frmForm1]![fld1].Text Is Null) 
		Or (T.Name Like  '%'+[Forms]![frmForm1]![fld1].Text+'%'))
 
ORDER BY F.Name;

Requery для подч. формы вызывается по _Change для каждого контрола.

В момент ввода подстроки для поиска фильтруется замечательно. Если же при введённой подстроке выбрать любое значение из любого комбокса, то срабатывает фильтрация только по данным комбобоксов, а по подстроке - игнорируется.

Причина понятна - fld1.Text = Null, когда фокус не на нём.

В запросе переводить фокус нельзя, как я понимаю. Подскажите, какую проверку добавить в него для определения контрола с текущим фокусом (т.е. когда фокус на fld1, тогда фильтруем по Text, иначе - по Value)?

Есть в Access что-то типа fld1.Focused как в Delphi? :)
...
Рейтинг: 0 / 0
01.07.2004, 12:33:36
    #32584943
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Временно починил свою вышеописанную проблему путём обращения в запросе к Caption невидимой кнопки, которое меняется по fld1_Change на fld1.Text.

Но это всё-таки вырезать гланды через анус. Хорошо хоть, что ещё не автогеном. Существует ли нормальное решение?
...
Рейтинг: 0 / 0
01.07.2004, 12:36:04
    #32584947
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
А что мешает всегда смотреть на Value?
...
Рейтинг: 0 / 0
01.07.2004, 12:43:30
    #32584967
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
2Владимир Саныч

Alexander Gхелп

Пока элемент управления имеет фокус свойство Текст (Text) содержит текст, который находится в элементе управления в текущий момент; свойство Значение (Value) содержит последние сохраненные данные. При переносе фокуса на другой элемент управления происходит обновление данных и в качестве значения свойства Значение (Value) устанавливается новое значение.
...


Вот это мешает. Фильтрация должна работать по мере ввода каждой буквы (типа real-time).
Я забыл про это сразу написать :)
...
Рейтинг: 0 / 0
01.07.2004, 12:59:56
    #32585013
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
авторЕсть в Access что-то типа fld1.Focused как в Delphi? :)
Screen.ActiveControl
?
...
Рейтинг: 0 / 0
01.07.2004, 13:01:33
    #32585023
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Тогда пишем функцию, к которой можно будет обращаться из запроса:

function XXX()
on error goto err_XXX
XXX=forms!myform!mycontrol.text
exit function
err_XXX:
XXX=forms!myform!mycontrol.value
end function
...
Рейтинг: 0 / 0
01.07.2004, 13:42:11
    #32585174
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
paparome
Screen.ActiveControl
?
Угу. Но в запрос кроме как в виде проверки по имени не вижу возможности внести.
Всё-таки странно, что у самих контролов нет такого свойства :(

Владимир Саныч
Тогда пишем функцию, к которой можно будет обращаться из запроса:

function XXX()
on error goto err_XXX
XXX=forms!myform!mycontrol.text
exit function
err_XXX:
XXX=forms!myform!mycontrol.value
end function

Мож я чего туплю, но при открытии формы ругается нехорошими словами:
...
Рейтинг: 0 / 0
01.07.2004, 13:50:49
    #32585206
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
UniccoМож я чего туплю, но при открытии формы ругается нехорошими словами:
А в форме-то что написано?
...
Рейтинг: 0 / 0
01.07.2004, 13:58:39
    #32585227
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Владимир Саныч
А в форме-то что написано?

Запрос:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT T.ID, T.Name AS Наименование
FROM dbo_Table1 AS T
WHERE ([Forms]![frmForm1]![cmb1] In ( 0 ,T.Field1)) 
	And ([Forms]![frmForm1]![cmb2] In ( 0 ,T.Field2))	
	And ([Forms]![frmForm1]![cmb3] In ( 0 ,T.Field3)) 
	And (([Forms]![frmForm1]![fld1].Text Is Null) 
		Or (T.Name Like  '%'+fld1_Data()+'%'))
 

ORDER BY T.Name;

Функция:

Код: plaintext
1.
2.
3.
4.
5.
6.
Function fld1_Data()
  On Error GoTo err_fld1_Data
  fld1_Data = [Forms]![frmForm1]![fld1].Text
  Exit Function
err_fld1_Data:
  fld1_Data = [Forms]![frmForm1]![fld1].Value
End Function

Относящегося к запросу больше ничего.
...
Рейтинг: 0 / 0
01.07.2004, 14:01:48
    #32585239
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
А функция в модуле формы? Дожна быть в обычном.
...
Рейтинг: 0 / 0
01.07.2004, 14:02:47
    #32585241
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
2 Unicco
ОФФТОП: чтобы не помешать скриншот с сообщением об ошибке, достаточно на любом мессаджбоксе нажать ctrl-C - при этом текст сообщения будет скопирован в буфер - очень удобно при общении с техсуппортом.
...
Рейтинг: 0 / 0
01.07.2004, 14:12:37
    #32585277
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Владимир СанычА функция в модуле формы? Дожна быть в обычном.
В обычном и есть. Через построитель выражений в запросе видна.

Hummer2 Unicco
ОФФТОП: чтобы не помешать скриншот с сообщением об ошибке, достаточно на любом мессаджбоксе нажать ctrl-C - при этом текст сообщения будет скопирован в буфер - очень удобно при общении с техсуппортом.
Будем знать, thx! :)
...
Рейтинг: 0 / 0
01.07.2004, 14:14:36
    #32585286
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Может быть, вместо
'%'+fld1_Data()+'%'
лучше написать
'%'&fld1_Data()&'%'
?
...
Рейтинг: 0 / 0
01.07.2004, 14:22:42
    #32585322
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Владимир СанычМожет быть, вместо
'%'+fld1_Data()+'%'
лучше написать
'%'&fld1_Data()&'%'
?

Пробовал. Не помогает.
...
Рейтинг: 0 / 0
01.07.2004, 14:26:26
    #32585336
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Стоп. А почему в запросе осталось [Forms]![frmForm1]![fld1].Text???
...
Рейтинг: 0 / 0
01.07.2004, 14:49:13
    #32585415
Unicco
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Свойство Textbox.Text. глюки ?!!
Это я скопировал код из сообщения выше (от 12:03) и забыл убрать лишнее :)

Реальный код нормальный :)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT T.ID, T.Name AS Наименование
FROM dbo_Table1 AS T
WHERE ([Forms]![frmForm1]![cmb1] In ( 0 ,T.Field1))
And ([Forms]![frmForm1]![cmb2] In ( 0 ,T.Field2))
And ([Forms]![frmForm1]![cmb3] In ( 0 ,T.Field3))
And (T.Name Like  '%' + fld1_Data() + '%')
 
ORDER BY T.Name;
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Свойство Textbox.Text. глюки ?!! / 25 сообщений из 38, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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