[D6] if Label54.Caption > Label8.Caption - Problem!

0

Witam...

Mam takowy dziwny problem...

Użyłem :

Label1
Label2
Button2

Problem:

Label1 := 2000

I chce ze : Gdy Label2 bedzie bedzie wieksze od Label1 button powinien zniknąć!! a tak nie jest po prostu sie dzieje tak... Ze gdy label1:= 2000 to Label2 jeden jezeli zaczyna sie zaczyna na jaka kolwiek liczbe wieksza od 2 to BUTTON STAJE SIE Od razu NIEWIDOCZNY!

Lub

Gdy Label1 : = 5000 to button takze znika gdy bedzie label2 zaczynac ssie na jaka kolwiek liczbe wieksza od 5 , ale moga sie zaczynac np.; 100000000 i wieksze lub 2000000 (mowa o label 2) oco biega!?

Oto czesc kodu...

aaa1:=((Strtoint(edit16.Text))*(costamcos)
Label1Caption:=(inttostr(aaa1));
if ((Label1Caption) &gt (Label2Caption)) then Button3.Enabled:=False else Button3.Enabled:=True;

Any idea? {glowa} {glowa} {glowa} hmm... hmm...

0

a dlaczego porownujesz stringi, sproboj skonwertowac to na liczby i wtedy dopiero porownuj

a:=inttostr(label1.cabtion);
b:=inttostr(label2.caption);
if a&gtb then znikaj;--Lardux

0

Zmomals napisał:
aaa1:=((Strtoint(edit16.Text))*(costamcos)
Label1Caption:=(inttostr(aaa1));
if ((Label1Caption) &gt (Label2Caption)) then Button3.Enabled:=False else Button3.Enabled:=True;

Bo porównujesz stringi, a nie liczby.
Jeżeli A i B to stringi to:

  1. Jeżeli Length(A) &gt Length(B) to A &gt B
  2. Jeżeli Length(A) = Length(B) to jeżeli A[1] &gt B[1] to A &gt B, jezeli nie to sprawdzamy dalej: Jeżeli A[2] &gt B[2] to A &gt B itd.

Jeżeli chcesz porównać liczby to weź StrToInt.

--
Jest jeszcze jeden błąd ... :)

Apel: Piszcie w tematach o jaki język programowania chodzi np. : [Delphi], [C++], itp.

0

heh to jest troszke zagmatwane :)

wezmy procedurke:

if '250' > '2050' then
ShowMessage('Buu.. String');

if 250 > 2050 then
ShowMessage('Buu.. Integer');

wedlug ciebie nie powinien pokazac sie zaden komunikat, ale wedlug komputera pokaze se 'Buu.. String' :)

wiec radze zastosowac StrToInt przy sprawdzaniu :)

if StrToInt('250') > StrToInt('2050') then
ShowMessage('Buu.. String');

if 250 > 2050 then
ShowMessage('Buu.. Integer');

no i teraz bedzie git ;) nie zobaczysz zadnego komunikatu
mysle ze za bardzo nie zagmatwalem, zeby lepiej zrozumiec mozesz
hemmmm... wrzucic na forme ListBox'a i w Items wpisac:
100
1002
2001
201
2010
33

potem ustaw Sorted na True i zobacz jak ci posortowalo

--
-=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

Nie wiem o co Ci chodzi, chcesz aby "Button" zniknął a używasz do tego właściwości Button.Enabled := False,

oto kod który powinien Ci pomóc:

var a, b: Integer;

a := StrToInt(Label1.Caption);
b := StrToInt(Label2.Caption);

if a &gt b then Button1.Visible := False else Button1.Visible;--Rastaroth

0

Rastaroth napisał:

&gtif a &gt b then Button1.Visible := False else Button1.Visible;

if a &gt b then Button1.Visible := False else Button1.Visible:=True;

lub

if a &gt b then Button1.Hide else Button1.Show;

--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

0

Rastaroth napisał:
if a &gt b then Button1.Visible := False else Button1.Visible;
Wrzyciłbym raczej Button1.Visible:=a &lt= b--Vogel [Delphi 6 PE]

Life is just a dream, you know...
[Cowboy Bebop]

0

Vogel napisał:

&gtWrzyciłbym raczej Button1.Visible:=a &lt= b

Bingo!--Pawel {Delphi 6 Personal}

Po pierwsze: naciśnij F1

1 użytkowników online, w tym zalogowanych: 0, gości: 1