![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | |
Заблокирован
Регистрация: 27.05.2010
Сообщений: 1,099
|
![]() Цитата:
Должен делать "...", но почему то отказывается делать это самое "...")) ты ЭТО хотел сказать ? Или ты хотел сказать что BP на строчке if Key = #13 then не ловится ?) |
|
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
Советую выполнить пошаговую трассировку (клавиша F7).
То есть, вместо того, чтобы нажать RUN, нажимайте F7, при этом на экране так строка, которая выполняется в данный момент времени, будет выделена тёмно-синим цветом. |
![]() |
![]() |
![]() |
#13 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
ну посмотрите внимательнее, я же код выложил
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#14 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
ещё совет
Код:
|
![]() |
![]() |
![]() |
#15 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
программа работает с файлами с других компов, там может стоять что угодно.
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#16 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Ваш код вообще не понятно что делает, в case для '.' какого то фига #13 обрабатывается
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#17 | |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]() Цитата:
1)в "case" заданы символы или кнопки которые можно использовать, #9 - это backspace, #13 - Enter, '.' - дробный разделитель, и числа. 2)if Pos(DecimalSeparator, Edit1.Text) <> 0 then Key:= Chr(0); // запрет ввода второго разделителя - запрет ввода второго разделителя 3)if Key = #13 then begin if (Label37.Caption = 'Введите новое значение (диаметр):') and ((Edit1.Text <> '') or (Edit1.Text <> '0')) then begin if Edit1.Text[1] <> '.' then Label24.Caption:= 'Диаметр: ' + Edit1.Text + ' мм' else Label24.Caption:= 'Диаметр: 0' + Edit1.Text + ' мм'; end else Label24.Caption:= 'Диаметр: н/а'; end; //код обработки клавиши Enter 4) Key := Chr(0); // остальные символы запрещены простой же код...
даешь высокое напряжение
|
|
![]() |
![]() |
![]() |
#18 | |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]() Цитата:
Сейчас смотрю и анализирую ваш код, вижу, что Case похоже не к месту вообще, на и может напутано что-то с парами begin-end. Щас посмотрим... Вообще, пишите код форматированно. |
|
![]() |
![]() |
![]() |
#19 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Ну это вам понятно, а это ваш код в виде, в котором хоть что-то понятно
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 28.06.2011 в 19:21. |
![]() |
![]() |
![]() |
#20 |
Старожил
Регистрация: 12.11.2010
Сообщений: 8,568
|
![]()
Советую обработку написать следующим образом:
Код:
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
OnKeyPress VS Edit1 :) | Federal | Помощь студентам | 6 | 29.07.2010 16:00 |
Не работатет onkeypress. | vedro-compota | Мультимедиа в Delphi | 4 | 08.06.2010 20:58 |
OnKeyPress | aurora_87 | Общие вопросы C/C++ | 3 | 15.01.2010 12:06 |
OnKeyPress из NumLock`а | Alex Cones | Общие вопросы Delphi | 2 | 23.04.2009 20:08 |