Apua!

uuppi

Pieni pulma minulla..

kun Labelissa lukee 100 ja ListBoxin palkissa lukee 500 ja buttonissa on tämä koodi:

Label1.Caption := (Label1.Caption ListBox1.Items.Strings[ListBox1.ItemIndex]);

ja kun buttonista painaa niin labeliin tulee 100500..
millä koodilla labeliin saisi 100500 sijasta 600? :P

3

308

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • vaan kokonaislukujen yhteen...

      Eli tilanne nyt

      Label:n Caption ominaisuus(property) palauttaa merkkijonon (string) jonka lisätään ohjelman käyttäjän valitsemaan ListBox-komponentissa olevaan merkkijonoon. Kun kaksi merkkijonoa lisätään toisiinsa niin syntyy tämä tilanne.


      Ilmeisesti haluat laskea kaksi kokonaislukua yhteen joista toinen on Label-komponentissa ja toisen voi ohjelman käyttäjä valita ListBox-komponentissa olevista
      luivuista.

      Mitä voisi tehdä?

      Vastaus olisi että muunnetaan merkkijonot kokonaisluvuiksi. Lasketaan kokonaisluvut yhteen. Muutetan yhteenlaskussa saatu summa takaisin merkkijonoksi.
      Merkkijono voidaan muuntaa kokonaisluvuksi (esim.) StrToInt -funktiolla.
      Vastaavasti kokonaisluku voidaan muuttaa merkkijonoksi IntToStr -funktiolla.

      Eli näppäimen painamista vastaavaan tapahtumaan voisi täydentää vaikka tälläiseksi:
      (oletuksena on eka oletus Form ja Button)


      procedure TForm1.Button1Click(Sender: TObject);
      var i,j:integer ;
      begin
         i := StrToInt( Label1.Caption );
         j := StrToInt( ListBox1.Items.Strings[ListBox1.ItemIndex] );
         i := j i;
         Label1.Caption := IntToStr(i);
      end;

    • SpinEdit

      Ihan vain vinkkinä kannattaa tutustua myös SpinEdit-komponenttiin.
      SpinEdit-komponentin Value ominaisuudesta saadaan suoraan integer arvo.
      Sillähän on muitakin ominaisuuksia kuten arvon lisäys ja vähennys (hiirtä klikkaamalla).

    • qwertyuioppi

      Välttämättä aivan kaikki ei heti huomaa että myös numeroiden yhteenliittäminen on hyvä asia.

      Tätä merkkijonojen lisäystä voi käyttää esim kun valitaan sopivaa teleoperaattoria esim. ulkomaan liikenteessä. Ulkomaan soitoissa puhelinnumeron eteen laitetaan 999 jos operaattoriksi valitaan Elisa, 990 = Sonera, 994=TDC song, 996 = DNA. Sen jälkeen tulee maan numero jne.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Sä olet epävakaa

      tai ainakin yrität onnistuneesti vaikuttaa siltä. Ei sun kanssa uskalla ruveta yhtään mihinkään, menis hommat ojasta all
      Ikävä
      46
      2160
    2. Yksi viesti häneltä ja ottaisin takaisin

      Mutta ei sitä tule. Ja ehkä parempi niin, tein jo valintani. En saanut häneltä tarpeeksi, kaikki muu meni minun edelle j
      Ikävä
      48
      1893
    3. Mieti miten paljon yritin

      Löytää yhteyttä kanssasi uudelleen sen väärinymmärryksen jälkeen. Koen etten tullut puoleltasi hyvin kohdelluksi mies😔
      Ikävä
      60
      1888
    4. Kurkkiiko myyrä jo

      Milloin tulee kolostaan?
      Ikävä
      36
      1564
    5. Kaikki on hyvin rakkaani

      Ja tulee olemaan.
      Ikävä
      78
      1268
    6. Keskisarjan puheet

      Onko kansanedustajan sopivaa puhua tuollai vai pitäisikkö potkia pois eduskunnasta?
      Suomussalmi
      254
      1183
    7. En enää uskalla laittaa sulle viestiä

      Naiselta miehelle ****
      Ikävä
      63
      1172
    8. En ikinä koskaan

      En tule ikinä hyväksymään!
      Tunteet
      63
      982
    9. Sovitaanko ja halataanko?

      Pyydetään toisiltamme anteeksi...❤️
      Ikävä
      50
      952
    10. Olen selvästi rikki

      Narsistiset ihmiset jotenkin koukuttaa minut.
      Ikävä
      24
      924
    Aihe