Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2010, 23:32   #1
kta87
Форумчанин
 
Аватар для kta87
 
Регистрация: 22.02.2010
Сообщений: 912
По умолчанию Не отображается текст в Edit

Код:
if Edit1.Enabled = False then Edit1.Text:= '0';
,
Но если в Edit1 было ведено число, то именно оно отображается когда
Код:
Edit1.Enabled = False
, а по условию должно быть
Код:
dit1.Text:= '0'
Что я не так делаю?
kta87 вне форума Ответить с цитированием
Старый 01.03.2010, 23:44   #2
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

kta87, по этому куску кода ничё не понять, выкладывай полный код.

Вот я проверил, у меня всё работает:

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if Edit1.Enabled = False then Edit1.Text:= '0';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Edit1.Enabled := Not Edit1.Enabled = true;
end;
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли

Последний раз редактировалось Marsel737; 01.03.2010 в 23:46.
Marsel737 вне форума Ответить с цитированием
Старый 02.03.2010, 00:25   #3
kta87
Форумчанин
 
Аватар для kta87
 
Регистрация: 22.02.2010
Сообщений: 912
По умолчанию

Marsel737, я разобрался! Тут другой вопрос возник:

в edit вводится дробное число 1,5 либо 1.5 , но '1,5' это не корректно! Как заменять в таком случае ',' на '.' ?
kta87 вне форума Ответить с цитированием
Старый 02.03.2010, 00:56   #4
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Ограничь вводимые в едит символы, на KeyPres пропиши:

Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if  (Key in ['a'..'z']) or (Key in ['A'..'Z'])  or
     (Key in ['а'..'я']) or (Key in ['А'..'Я'])  or
     (Key in ['-', '/', '>', '<', '?', ']', '[', '{', '}', 
                '_', '=', '+', ')', '(', '*', '&', '^', ':', 
                '%', ';', '$', '#', '@', '"', '!', '~', '`', 
                '№', ' ', 'ё', 'Ё', ',']) then
  begin
    Key := #0;
  end;
end;
Т.е. если тебе нужно в едит вводить только цифры и точку, то запрети все посторонние символы, чтобы не было ошибки


Или вот код заменяет цапятую на точку:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  I: integer;
  FText: string; // Текст едита
  FOne: integer; // Число цапятых в тексте
begin
  FOne := 0;
  // Проверяем чтоб запятая не была на первом месте
  if Edit1.Text[1] =',' then
  begin
    ShowMessage('Число задано неверно');
    Edit1.Clear;
    Exit;
  end;
  for I := 1 to Length(Edit1.Text) do
  begin
    if Edit1.Text[I] = ',' then
    begin
      FText := FText + '.';
      FOne := FOne + 1; // Увеличиваем число запятых
    end;
    if Edit1.Text[I] <> ',' then
      FText := FText + Edit1.Text[I]
  end;
  // Если в тексте больше одной запятой то ошибка
  if FOne > 1 then
  begin
    ShowMessage('Число задано неверно');
    Edit1.Clear;
    Exit;
  end;
  // Если всё нормально меняем текст в эдите
  Edit1.Text := FText;
end;
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли

Последний раз редактировалось Marsel737; 02.03.2010 в 01:08.
Marsel737 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В Edit-Control не отображается выборный файл --=SaNitinDG=- Общие вопросы C/C++ 4 15.02.2010 20:25
Проверить текст в Edit Nikone Общие вопросы Delphi 5 15.12.2009 18:46
неверно отображается текст после генирации страницы SeRhy PHP 3 04.05.2009 21:32
Текст в Edit Simon..14 Общие вопросы C/C++ 7 18.01.2009 17:28
Edit и текст M@rsel Компоненты Delphi 2 23.03.2007 09:33