Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Вниз

Incompatible types: String and Integer    Найти похожие ветки 

 
Vik ©   (2012-05-03 14:52) [0]

Приветствую, мне нужно, чтоб в поле Edit1 вводились только цифры (это я сделал), и при нажатии кнопки происходили действия.

Вот код. Подскажите, как правильно сделать?

procedure TForm1.Button1Click(Sender: TObject);
Var X : String;
begin
If X>5 then Label1.Visible:=True else Label2.Visible:=True;
end;


 
AV ©   (2012-05-03 14:54) [1]

X : Integer;


 
Медвежонок Пятачок ©   (2012-05-03 14:54) [2]

правильно сделать - это почитать про основы программирования


 
Сергей М. ©   (2012-05-03 14:57) [3]


> почитать про основы программирования


Автор обещал это сделать в обозримом будущем
http://delphimaster.net/view/15-1335956639/

Ну а пока оно, обозримое будущее, не наступило, Автор изучает метод научного тыка)


 
Vik ©   (2012-05-03 15:08) [4]

AV, как для текстового поля можно писать тип переменной "Integer" ?

Медвежонок Пятачок, я читаю. В книгах на такой вопрос ответ найти не получится (по крайней мере не получилось) :)

Сергей М., не совсем. Я читаю книгу, хочется поэкперементировать со своими примерами, вот и наткнулся на проблему.

Я завязываю с тыком, помогите только решить проблему. Спасибо.


 
Amoeba_   (2012-05-03 15:11) [5]


> Подскажите, как правильно сделать?

Есть такая магическая функция
function StrToInt(const S: string): Integer;


 
Медвежонок Пятачок ©   (2012-05-03 15:14) [6]

AV, как для текстового поля можно писать тип переменной "Integer" ?

Ну ты же не смущаешься, когда строку сравниваешь с числом.


 
Плохиш ©   (2012-05-03 15:20) [7]


> procedure TForm1.Button1Click(Sender: TObject);
> Var X : String;
> begin
> If X>5 then Label1.Visible:=True else Label2.Visible:=True;
> end;
>

Оно кодит новый алгаритму для лотереи :-))


 
Медвежонок Пятачок ©   (2012-05-03 15:22) [8]

Я читаю книгу, хочется поэкперементировать со своими примерами, вот и наткнулся на проблему.

Ты не ту книгу читаешь. Не про колобка надо читать книжку, а другую.


 
AV ©   (2012-05-03 15:24) [9]


> Vik ©   (03.05.12 15:08) [4]
>
> AV, как для текстового поля можно писать тип переменной
> "Integer" ?

никак.
но и текстовую переменную нельзя сравнивать с числом.
либо переменная типа число (любое), либо сравнивать не с числом
либо сравнивать не саму переменную, а результат функции от нее (см [5]).


 
Юрий Зотов ©   (2012-05-03 15:27) [10]


> Vik ©   (03.05.12 14:52)  

procedure TForm1.Button1Click(Sender: TObject);
var
 X: integer;
begin
 X := StrToInt(Edit1.Text);
 Label1.Visible := X > 5;
 Label2.Visible := not Label1.Visible
end;


 
Vik ©   (2012-05-03 15:27) [11]

Amoeba_ , спасибо.

Медвежонок Пятачок, смущаюсь. Вот и задаю вопрос "как правильно сделать?".


 
Vik ©   (2012-05-03 15:36) [12]

Спасибо за помощь.

Не по теме.     Д.Осипов - Delphi.Профессиональное программирование.  нормальная книга?


 
Anatoly Podgoretsky ©   (2012-05-03 15:40) [13]

Бери лучше иностранных авторов.


 
AV ©   (2012-05-03 15:40) [14]

возможно.
но думаю Вам стоит начать с картинок, типа
http://compteacher.ru/programming/delphi/848-delphi-dlya-nachinayuschih.html
или
http://www.google.ru/#hl=ru&newwindow=1&q=%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5+delphi+%D0%BE%D0%BD%D0%BB%D0%B0%D0%B9%D0%BD&oq=%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5+delphi&aq=1&aqi=g3g-v7&aql=&gs_l=serp.3.1.0l3j0i15l7.50975.58290.0.61293.23.12.2.3.4.0.565.2218.3j6j 2j5-1.12.0...0.0.uUk_AYR8fOQ&bav=on.2,or.r_gc.r_pw.,cf.osb&fp=8a013a9c42f685df&biw=1 178&bih=881


 
Vik ©   (2012-05-03 15:53) [15]

Почему лучше иностранных?


 
CRLF   (2012-05-03 15:56) [16]

чтобы скорее развалить Матушку Святую Русь


 
Anatoly Podgoretsky ©   (2012-05-03 16:06) [17]

> Vik  (03.05.2012 15:53:15)  [15]

Потому что наши в лучшем случае перепечатка справки


 
KilkennyCat ©   (2012-05-03 21:18) [18]


> Anatoly Podgoretsky ©   (03.05.12 16:06) [17]

после изучения основ перпечатанная справка вполне достойный материал


 
Vik ©   (2012-05-03 21:49) [19]

Кстати, решение нашел гораздо проще=)


 
Vik ©   (2012-05-03 21:52) [20]

По крайней мере дня 2 назад до меня бы даже это не дошло. Тенденция, однако :D

procedure TForm1.Button1Click(Sender: TObject);
var
X: integer;
begin
X := StrToInt(Edit1.Text);
Label1.Visible := X > 5;
Label4.Visible := X=5;
Label2.Visible := X<5
end;

procedure TForm1.Edit1Change(Sender: TObject);
begin

Label1.Visible:=False;
Label2.Visible:=False;
label4.Visible:=False
end;

end.


 
Медвежонок Пятачок ©   (2012-05-03 21:52) [21]

нашел программиста?


 
Vik ©   (2012-05-03 21:53) [22]

А нет, не проще, так же примерно )))


 
Vik ©   (2012-05-03 21:54) [23]

Медвежонок пятачок, хватит надо мной прикалываться!) Надо же с чего то начитать!


 
Vik ©   (2012-05-03 21:59) [24]

Я же книжку стал читать )))


 
Inovet ©   (2012-05-03 22:10) [25]

> [22] Vik ©   (03.05.12 21:53)
> А нет, не проще, так же примерно )))

Предложенное ЮЗ лучше, поскольку сравнение делается в одном месте, что снижает вероятность ошибки при кодировании и последующих правках кода.


 
Плохиш ©   (2012-05-03 23:51) [26]


> Inovet ©   (03.05.12 22:10) [25]

Ну в общем-то [10] и [20] достаточно сильно отличаются.


 
Германн ©   (2012-05-04 01:53) [27]


> Anatoly Podgoretsky ©   (03.05.12 16:06) [17]
>
> > Vik  (03.05.2012 15:53:15)  [15]
>
> Потому что наши в лучшем случае перепечатка справки
>

Ну не надо так чернить наших авторов.


 
Vik ©   (2012-05-04 06:48) [28]


> Inovet ©   (03.05.12 22:10) [25]
, Как раз в его коде при поправках ошибки были (когда я 3-е сравнение добавил), а то я делаю программу, в поле едит вводим число, нажимаем кнопку. Она должна написать меньше пяти это число, больше или равно.    

Юрий Зотов привел хороший код (я то не говорил что 3 сравнения хочу сделать) , и при вводе числа 5 программа писала "меньше пяти"    =)

Ну мне кажется я тоже не плохо сделал..

Ну не надо так чернить наших авторов.

Так же думаю


 
Anatoly Podgoretsky ©   (2012-05-04 07:07) [29]


> после изучения основ перпечатанная справка вполне достойный
> материал

Это после изучения основ, а тут идет об "ДО"
И после изучения основ интерактивная лучше.


 
Vik ©   (2012-05-04 07:43) [30]

>Это после изучения основ, а тут идет об "ДО"

Скорее во время.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.07 c
15-1335356229
AV
2012-04-25 16:17
2013.03.22
Кодировка русских путей при запуске bat, сделанного в NotePad


2-1331794898
bash77
2012-03-15 11:01
2013.03.22
очистить массив, удалить или еще чего с ним


2-1343722792
Теркин
2012-07-31 12:19
2013.03.22
Сбой работы базы данных


3-1278159587
alex810
2010-07-03 16:19
2013.03.22
Запрос с нечувствительностью к регистру


15-1350073802
Юрий
2012-10-13 00:30
2013.03.22
С днем рождения ! 13 октября 2012 суббота





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский