0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
1 | |
Запрет на ввод чисел в EDIT, пока не будет заполнено другое поле edit21.05.2014, 19:58. Показов 6199. Ответов 31
Метки нет (Все метки)
Здравствуйте!
Дело в том, что мне нужно сделать так, чтобы одно поле edit нельзя было заполнять до тех пор, пока не заполнено другое поле edit. То есть, например, пока поле edit1 не заполнено, в поле edit2 запрещено что-либо вводить. Заранее спасибо тем, кто откликнется.
0
|
21.05.2014, 19:58 | |
Ответы с готовыми решениями:
31
Ввод чисел в поле Edit по нажатию на него мышкой Запрет использования Button, пока не будут заполнены поля Edit Запрет использования Button, пока не будут заполнены поля Edit Запрет ввода цифр в поле Edit |
пофигист широкого профиля
4732 / 3167 / 858
Регистрация: 15.07.2013
Сообщений: 18,251
|
|
21.05.2014, 20:00 | 2 |
Сообщение было отмечено Ella17 как решение
Решение
1
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 20:06 [ТС] | 3 |
Спасибо за ответ!
Добавлено через 3 минуты Если вы не хотите ничего объяснять, подсказать каким можно способом это реализовать, то зачем писать... И я не прошу код в студию. По-моему это форум программистов и я как начинающий, прошу объяснения у тех, кто готов помочь советом.
0
|
13 / 13 / 11
Регистрация: 28.09.2013
Сообщений: 364
|
|
21.05.2014, 20:08 | 4 |
Ella17, Если свойство Enabled поставить false, пойдет?
0
|
пофигист широкого профиля
4732 / 3167 / 858
Регистрация: 15.07.2013
Сообщений: 18,251
|
|
21.05.2014, 20:12 | 5 |
Что в моем простом вопросе прозвучало так обидно? Мне чтобы дать совет или пример действительно нужно знать что подразумевается под заполненностью.
0
|
13 / 13 / 11
Регистрация: 28.09.2013
Сообщений: 364
|
|
21.05.2014, 20:14 | 6 |
northener, возможно автор подразумевает под "заполнено", что поле не должно быть пустым, иначе сказал бы конкретнее.
0
|
пофигист широкого профиля
4732 / 3167 / 858
Регистрация: 15.07.2013
Сообщений: 18,251
|
|
21.05.2014, 20:17 | 7 |
0
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 20:52 [ТС] | 8 |
Дело в том, что мне нужно реализовать расчет. И я хотела поставить запрет на ввод значений на каждую последующую ячейку. То есть, сначала заполняется первый edit, после чего снимается запрет с ввода значений со второго edit и так с последующими edit.
0
|
13 / 13 / 11
Регистрация: 28.09.2013
Сообщений: 364
|
|||||||||||
21.05.2014, 20:55 | 9 | ||||||||||
Ella17, Это вставляем в событие Change:
0
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 20:56 [ТС] | 10 |
northener, Тогда так бы и сказали, что мой вопрос не понятен. Просто, например, я поняла так, будто бы Вы имеете ввиду, что я зашла сюда и жду пока мне всё готовое выложат...
Добавлено через 23 секунды Taxip, Спасибо большое, сейчас попробую!
0
|
13 / 13 / 11
Регистрация: 28.09.2013
Сообщений: 364
|
||||||
21.05.2014, 20:58 | 11 | |||||
Сообщение было отмечено Ella17 как решение
Решение
Надо еще дописать
1
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 21:02 [ТС] | 12 |
Я создала событие OnChange для edit1, но при запуске в edit2 значения всё равно вводятся...
Подумаю, как можно обойтись без запрета. Спасибо, что откликнулись!
0
|
13 / 13 / 11
Регистрация: 28.09.2013
Сообщений: 364
|
|
21.05.2014, 21:06 | 13 |
Ella17, Изначально надо в edit2 изменить Enabled: true на false
0
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 21:17 [ТС] | 14 |
Taxip, Спасибо Вам! Вроде получилось, я до этого еще свойство Enabled забыла поменять просто...
Добавлено через 10 минут Извините, можно задать еще один вопрос? Чтобы расчет происходил автоматически, то есть вводились значения допустим в два edita и выводились в третьем edit без нажатия на кнопку, нужно создавать событие на форме или на самом edit?
0
|
пофигист широкого профиля
4732 / 3167 / 858
Регистрация: 15.07.2013
Сообщений: 18,251
|
|
21.05.2014, 21:24 | 15 |
Не надо так делать. Ничего хорошего из этого не выйдет. Только пользователь сможет точно определить когда уже можно делать вычисления, а когда еще рано.
0
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 21:31 [ТС] | 16 |
northener, Мне нужно сделать именно так, поскольку вычисленное в этом третьем edite значение будет задействовано в следующем расчете, который будет находится на той же форме. А мне для того, чтобы начать следующий расчет, как раз таки нужно, чтобы был уже готовый ответ в edit.
Добавлено через 5 минут Это будет своего рода помощь в правильности проведения расчета для пользователя.
0
|
3 / 3 / 1
Регистрация: 10.03.2013
Сообщений: 125
|
|
21.05.2014, 21:37 | 17 |
Я предлагаю в событии на OnKeyUP дописать активацию флага (e1:boolean)
Смысл. Если в Edit1 есть данные, то флаг переходит в "true", В свою очередь для Edit2 в событии OnChange допишите if e1=true the Edit2.Enabled; В дальнейшем, подумайте над тем, КАК будет обнуляться флаг, другими словами - если при нажатии кнопки "Очистить" у вас очищаются Edit1, Edit2, то флаг e1:=false.
0
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 21:45 [ТС] | 18 |
Teapot1488, Я имею ввиду, что мне нужно, чтобы расчет происходил автоматически, то есть вводились значения допустим в два edita и выводились в третьем edit без нажатия на кнопку, нужно создавать событие на форме или на самом edit? А вы говорите о запрете на ввод чисел в последующие edit, пока не введены значения в предыдущий edit?
0
|
3 / 3 / 1
Регистрация: 10.03.2013
Сообщений: 125
|
||||||
21.05.2014, 22:44 | 19 | |||||
Я теперь понял.
Например у вас есть 3 Edit. С числами в Edit1, Edit2 производится какое нибудь действие, а в Edit3 выводится результат. Например: a + b = c В Edit1 - a, Edit2 - b, Edit3 - c. В событии OnChange Edit1 И Edit2 (что важно) пишите код расчетов, предварительно указав переменные в процедуре, если переменные не указаны как глобальные. И далее:
1
|
0 / 0 / 2
Регистрация: 20.05.2012
Сообщений: 183
|
|
21.05.2014, 23:07 [ТС] | 20 |
Teapot1488, Да, я такой код и прописывала:
a:=strtofloat(edit1.text); b:=strtofloat(edit2.text); c:=strtofloat(edit3.text); d:=a*b*c; edit4.Text:=floattostr(d); Переменные прописала, как глобальные. Событие OnChange прописала для edit4. Всё вроде бы работает, вот только когда я при запуске дохожу до edit4, он не выводит получившийся результат, а верней сказать выводит, но только после нажатия в поле edit4 на какую-либо клавишу... Чем это может быть вызвано?.. Добавлено через 7 минут Teapot1488, Всё, вроде разобралась. Событие OnClick просто выбрала и там прописала этот код... Спасибо за отклик! Добавлено через 3 минуты Правда в таком случае пользователю придется нажимать на поле edit4... То есть он автоматом не будет показывать получившееся значение.
0
|
21.05.2014, 23:07 | |
21.05.2014, 23:07 | |
Помогаю со студенческими работами здесь
20
Запрет ввода символов в поле Edit Запрет ввода букв в поле Edit Запрет на ввод некоторых символов в edit Запрет на ввод первого символа в edit Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |