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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2010, 16:09   #1
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию InputQuery в модуле QDialogs

В модуле QDialogs есть парочка интересных InputQuery (для integer и double).
Первая работает как положено:
Код:
procedure TForm1.RzBitBtn1Click(Sender: TObject);
var i: Integer;  btnOK: Boolean;
begin
  i := 10;
  btnOK := InputQuery('Заголовок', 'Целое число', i, 5, 100, 1);
  if btnOK then ShowMessage(IntToStr(i));
end;
Во первых, есть SpinEdit с указанным инкрементом и i не может быть < 5 или > 100.

Со второй косяк:
Код:
procedure TForm1.RzBitBtn2Click(Sender: TObject);
var d: Double; btnOK: Boolean;
begin
  d := 17.23457;
  btnOK := InputQuery('Заголовок', 'Дробное число', d, 1, 100, 1);
  if btnOK then ShowMessage(FloatToStr(d));
end;
Напомню эту функцию
Код:
function InputQuery(const ACaption, APrompt: WideString; 
var Value: Double, Min: Double = Low(Integer); 
Max: Double = High(Integer); Decimals: Integer = 1): Boolean;
Ничего не работает. d может принимать значения < min и > max. К-во знаков после запятой не учитывается. Спасибо, что не разрешает буквы вместо цифр вводить.
Где собака зарыта?

Последний раз редактировалось _SERGEYX_; 03.12.2010 в 16:16.
_SERGEYX_ вне форума Ответить с цитированием
Старый 03.12.2010, 16:54   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Это в какой версии Делфи?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.12.2010, 17:44   #3
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

В седьмой. В папке Lib лежит файл QDialogs.dcu. Он есть в стандартной поставке.
Надо в uses добавить QDialogs.
И набрать InputQuery(...
Обычный InputQuery (из Dialogs) только для String.
Добавятся еще три (из QDialogs) для WideString, Integer и Double.
_SERGEYX_ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ограничение на кол-во строк в модуле Сергей089 Общие вопросы Delphi 2 10.07.2010 02:56
Процедуры в модуле Pascal n0rma1 Помощь студентам 3 01.05.2010 11:10
Ругается в модуле! Как быть? Golovastik Общие вопросы Delphi 21 14.07.2009 21:26
MidletPascal Модуль в модуле Kn793 Помощь студентам 4 25.09.2008 22:45