Oisko.......

missää..........

Delphi 7 ohjelmaan alotusniksejä? Joku sivu jossa lukisi vaikka kaikki perusjutut?

29

605

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Yleisesti

      Tällä palstalla voi kysyä kaikkea Delphiin liittyvää. Myös aloitusohjeita.
      Kerro missä mennään? Osaatko jo tehdä sellaisen (ohjelman/)ikkunan missä näkyy
      haluaamaasi tekstiä?

      • selevä....

        Joo tänää aloin tutustumaan koulussa delphi 7 ohjelmaan opettajan kanssa ATK tunnilla kun olen saanut kaikki excel tehtävät tehtyä paljon aikaisemmin mitä piti. Haluisisin tietää esim. miten saan pop-upin liitettyä johonkin napulaan? Siis jos teen nappulan jonka nimi on vaikka 'Button1' ja sitten painan run nappulaa ja painan 'Button1' nappulaa ni tulis jonkumoinen pop-uppi. Tuleeko jostain frame nappulasta? Opettaja ei itsekään tiennyt tuota miten tehdä.


      • ...
        selevä.... kirjoitti:

        Joo tänää aloin tutustumaan koulussa delphi 7 ohjelmaan opettajan kanssa ATK tunnilla kun olen saanut kaikki excel tehtävät tehtyä paljon aikaisemmin mitä piti. Haluisisin tietää esim. miten saan pop-upin liitettyä johonkin napulaan? Siis jos teen nappulan jonka nimi on vaikka 'Button1' ja sitten painan run nappulaa ja painan 'Button1' nappulaa ni tulis jonkumoinen pop-uppi. Tuleeko jostain frame nappulasta? Opettaja ei itsekään tiennyt tuota miten tehdä.

        procedure TForm1.Button1Click(Sender: TObject);
        var f:tform;
        begin
        f:=TForm.Create(nil);
        f.Show;
        end;


      • noi...
        ... kirjoitti:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:tform;
        begin
        f:=TForm.Create(nil);
        f.Show;
        end;

        ku sinne laittaa ni pitäis pop-up tulla nappulaa painamalla? Mites sitten sais sellasen ''latauspalkin'' joka lähtis lataa jotain olematonta nappia painamalla?


      • Yleisesti
        ... kirjoitti:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:tform;
        begin
        f:=TForm.Create(nil);
        f.Show;
        end;

        Eli tämä vastaaja tarjoaa sellaista vaihtoehtoa että
        ikkuna(form) luodaan lennossa. Se ei ole ehkäpä niitä helpompia tapoja aloittelijalle (Mutta eräs hyvä vaihtoehto).


      • Tässä lisävihjeitä
        noi... kirjoitti:

        ku sinne laittaa ni pitäis pop-up tulla nappulaa painamalla? Mites sitten sais sellasen ''latauspalkin'' joka lähtis lataa jotain olematonta nappia painamalla?

        Tässä lisävihjeitä

        procedure TForm1.Button1Click(Sender: TObject);
        var   f:TForm;
           pBar: TProgressBar;
        begin
           f:=TForm.Create(nil);
           f.Caption:='Ikkuna';
           pBar := TProgressBar.Create(nil);
           pBar.Parent:=f;
           pBar.top :=10;
           pBar.left:=20;
           pBar.Position:=50;
           f.Show;
        end;


      • ...
        noi... kirjoitti:

        ku sinne laittaa ni pitäis pop-up tulla nappulaa painamalla? Mites sitten sais sellasen ''latauspalkin'' joka lähtis lataa jotain olematonta nappia painamalla?

        Jos laitat ProgressBarin ja Buttonin formille, niin buttonia klikkaamalla tapahtuu edistystä.

        procedure TForm1.Button1Click(Sender: TObject);
        var t:integer;
        begin
        for t:=1 to 10 do begin
        ProgressBar1.stepit;
        sleep(100); //100 ms viive
        end;
        end;


      • Mika0800
        selevä.... kirjoitti:

        Joo tänää aloin tutustumaan koulussa delphi 7 ohjelmaan opettajan kanssa ATK tunnilla kun olen saanut kaikki excel tehtävät tehtyä paljon aikaisemmin mitä piti. Haluisisin tietää esim. miten saan pop-upin liitettyä johonkin napulaan? Siis jos teen nappulan jonka nimi on vaikka 'Button1' ja sitten painan run nappulaa ja painan 'Button1' nappulaa ni tulis jonkumoinen pop-uppi. Tuleeko jostain frame nappulasta? Opettaja ei itsekään tiennyt tuota miten tehdä.

        popup? - jos tarkoitat OK -painikkeella kuitattavaa viesti-ikkunaa, niin button1click -metodiin:

        ShowMessage('Oma tekstisi tähän.');

        uuden ERI formin näyttämiseen on 2 eri keinoa:

        1. Form2.ShowModal; // näyttää uuden formin modaalisena, eli uusi formi on suljettava, jotta alkuperäin formi ottaisi vastaan komentoja.

        2. Form2.Show; // näyttää uuden formin, ja vanha formi on edelleen täysin käytettävissä.

        huomaa: jos luot uuden formin "lennossa", varmista oikea muistinhallinta !

        katso myös:

        SetFocus

        SetForegroundWindow

        ActiveControl

        FormState

        WindowState


    • Yleisesti

      Kannattaa lukea myös tällä palstalla aiemmin kirjoitetut jutut.

      • kokeilen....

        näitä huomenna. Torstaina on yökoulu joten kerkee kunnola tutustumaan ohjelman käyttöön.


      • sitte....
        kokeilen.... kirjoitti:

        näitä huomenna. Torstaina on yökoulu joten kerkee kunnola tutustumaan ohjelman käyttöön.

        toi visual basic? Minkäslainen ohjelma se on? ja onkos se maksullinen?


      • Eipä niin
        sitte.... kirjoitti:

        toi visual basic? Minkäslainen ohjelma se on? ja onkos se maksullinen?

        Parempi unohtaa VB heti kättelyssä! Lueppa tämän palstan aikaisemmat viestit!


      • tossa...

      • Mika0800

    • viel......

      sellanen kysymys, että mitenkäs saan muokattua sitä pop-up ikkunaa? Siis lisäämällä tekstiö siihen sun muuta. Ja miten saisin jonkun nappulan toimimaan siten, että se sulkisi ohjelman?

      • ...

        procedure TForm1.Button1Click(Sender: TObject);
        begin
        form1.close;
        end;

        Delphin asennuskansiosta löytyy esimerkkiohjelmia.


    • Kokeile näinkin

      Toinen (ehkäpä myös helpompi) tapa on tehdä niin
      että luot uuden lomakkeen (ikkunan/formin) sovelluskehittimellä.
      Syntyy oletusarvoisesti luokka TForm2 ja tiedosto unit2.pas lisäät tälle
      lomakkeelle haluamasi komponentit jne.


      Lisäät (lomakkeen TForm1) unit1.pas tiedoston uses-lauseeseen (pilkulla erotettuna, jonon jatkoksi)
      unit2


      Korvaat Button1Click-tapahtuman seuraavaksi:

      procedure TForm1.Button1Click(Sender: TObject);
      var f:TForm2;
      begin
      f := TForm2.Create(nil);
      f.show;
      end;

      • ...

        procedure TForm1.Button1Click(Sender: TObject);
        begin
        Form2.Show;
        end;


      • Kyllä mutta
        ... kirjoitti:

        procedure TForm1.Button1Click(Sender: TObject);
        begin
        Form2.Show;
        end;

        Kyllä toikin riittäisi mutta tässä tapauksessa tuo luokka luotaisiin ohjelman käynnistyksessä!


      • Kyllä mutta

        Olion " Var f:TForm2; " esittelyn voisi siirtää TForm1 luokan private osioon
        Siis tiedostossa unit.pas kohdan { private declarations } alle uudelle riville
        f:TForm2;


      • ----------------

        Tuossa kannattaisi käyttää
        ShowModal-metodia Show:n tilalla!


      • wertywerty

        Tekisin sen näin:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:TForm2;
        begin
           f := TForm2.Create(nil);
           f.showModal;
           f.free;
        end;


      • ^_^-^_^
        ... kirjoitti:

        procedure TForm1.Button1Click(Sender: TObject);
        begin
        Form2.Show;
        end;

        Tekemällä itse luokan rakentajan voit välittää monia haluamiasi tietoja oliolle.


        eli unit2 voisi olla rakentaja tehty näin
        Luokan TForm2 esittelyssä:
        public
        { public declarations }
        constructor create(t: string);overload;

        ...


        constructor TForm2.create(t:string);
        begin
        Inherited create(nil);
        caption :=t; // ikkunan otsikkorivin teksti
        end;



        jolloin unit1:ssä voidaan luokka luoda näin
        f := TForm2.Create('terve');

        Mikään ei estä lisäämästä noita parametrejä vielä lisää


      • mutta.....
        wertywerty kirjoitti:

        Tekisin sen näin:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:TForm2;
        begin
           f := TForm2.Create(nil);
           f.showModal;
           f.free;
        end;

        viel yks kysymys. Tai itseasias pari. Eli mitenkäs tollasen lataus palkin sais lataa jotain olematonta? Siis sillei et se vaa latais koko aja. Ja sitte ku tossa yhessä kohtaa neuvottiin näin:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:TForm;
        pBar: TProgressBar;
        begin
        f:=TForm.Create(nil);
        f.Caption:='Ikkuna';
        pBar := TProgressBar.Create(nil);
        pBar.Parent:=f;
        pBar.top :=10;
        pBar.left:=20;
        pBar.Position:=50;
        f.Show;
        end;

        Niin miksi se alkaa herjaa tost pBar: TProgressBar;? Kaikki muu kunnossa paitsi toi......


      • sitte..............
        mutta..... kirjoitti:

        viel yks kysymys. Tai itseasias pari. Eli mitenkäs tollasen lataus palkin sais lataa jotain olematonta? Siis sillei et se vaa latais koko aja. Ja sitte ku tossa yhessä kohtaa neuvottiin näin:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:TForm;
        pBar: TProgressBar;
        begin
        f:=TForm.Create(nil);
        f.Caption:='Ikkuna';
        pBar := TProgressBar.Create(nil);
        pBar.Parent:=f;
        pBar.top :=10;
        pBar.left:=20;
        pBar.Position:=50;
        f.Show;
        end;

        Niin miksi se alkaa herjaa tost pBar: TProgressBar;? Kaikki muu kunnossa paitsi toi......

        viel sellanen kysymys et jos tekee oman selaimen niin pitääkö ''Go!'' painikkeen begin ja end välille kirjoittaa webbrowsing1.navigatetoedit1.text?


      • Jep 3
        mutta..... kirjoitti:

        viel yks kysymys. Tai itseasias pari. Eli mitenkäs tollasen lataus palkin sais lataa jotain olematonta? Siis sillei et se vaa latais koko aja. Ja sitte ku tossa yhessä kohtaa neuvottiin näin:

        procedure TForm1.Button1Click(Sender: TObject);
        var f:TForm;
        pBar: TProgressBar;
        begin
        f:=TForm.Create(nil);
        f.Caption:='Ikkuna';
        pBar := TProgressBar.Create(nil);
        pBar.Parent:=f;
        pBar.top :=10;
        pBar.left:=20;
        pBar.Position:=50;
        f.Show;
        end;

        Niin miksi se alkaa herjaa tost pBar: TProgressBar;? Kaikki muu kunnossa paitsi toi......

        Uses-lauseesta puuttuu:
        ComCtrls


        Vinkki vastaisuuden varalle eli teeppä näin:
        - tee pikainen kokeilu projekti
        eli aluksi vain tyhjä ikkuna.
        - katsot ohjelmakoodia kiinnitä huomio
        uses-lauseen loppuun (sanaan ennen puolipistettä).
        -lisäät ProgressBar-komponentin lomakkelle.
        Ja katsot uudestaan tuota uses-lausetta niin
        sinne on tullut ComCtrls.
        Huomaa että sovelluskehitin ei poista automaattisesti noita vaikka se lisää niitä automaattisesti jos tarvittavaa käännösyksikköä ei ole.
        Tuhoa tämä kokeilu projekti.


      • ...
        sitte.............. kirjoitti:

        viel sellanen kysymys et jos tekee oman selaimen niin pitääkö ''Go!'' painikkeen begin ja end välille kirjoittaa webbrowsing1.navigatetoedit1.text?

        paas kokeileen.


      • Aloita uusi keskustelu
        sitte.............. kirjoitti:

        viel sellanen kysymys et jos tekee oman selaimen niin pitääkö ''Go!'' painikkeen begin ja end välille kirjoittaa webbrowsing1.navigatetoedit1.text?

        Teeppä niin että "Aloita uusi keskustelu", tarkenna ja täydennä sitä.
        Käytä luokka nimiä (Luokat alkavat yleensä T-kirjaimella)

        Kysymykset saattavat hukkua


      • Tarkkuutta

        Jos tarkoituksena on luoda vain yksi ikkuna niin pitää estää
        että napin uudelleen painaminen luo jo luodun rinnalle uuden ikkunan.
        Eli pitää tarkistaa ennen luomista onko ikkuna olemassa!
        (koskee lähinnä tapauksia joissa on create ja show )


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

    Luetuimmat keskustelut

    1. IL - PerSut tykittää - Vaaralliset tappajat vankilaan jopa loppuelämäksi!!

      Entistä rajumpi elinkautinen tulee – Vaaralliset tappajat vankilaan jopa loppuelämäksi Henkirikosten uusijat voidaan ja
      Maailman menoa
      152
      14466
    2. Some kuhisee Sanna Marinista: "Wau"

      Sanna Marinia hehkutetaan. Muun muassa Jodelissa kommentoidaan The Sunday Timesin julkaisemaa kuvaa Marinista. Hän ant
      Maailman menoa
      23
      7445
    3. Äärioikeistopurran nukke Petteri Lapanen paniikissa

      Kun Suomen historian paras pääministeri antoi vankan lausunnon, kuinka "keskustelu politiikassa on käpertynyt lähinnä va
      Maailman menoa
      45
      6061
    4. SIELTÄ SE TULI: Kepu-Kurvinen: "Emme enää lähde punavihreään hallitukseen"

      Nyt muuten nauretaan loppuviikko, että tähänkö kaatui Lindtmanin pääministerihaaveet. "Antti Kurvisen mukaan puolue ei
      Maailman menoa
      168
      5660
    5. Onko rajojen kiinnipitäminen ihmisoikeuksien vastaista?

      Maahanmuutosta puhutaan usein niin kuin kyse olisi vain numeroista ja rajoista. Kyse on kumminkin ihmisistä, jotka halua
      Maahanmuutto
      312
      4437
    6. HS - Sanna Marinin kirja on priimaluokan vedätys!

      Kirja-arvio|Toivo on tekoja tulisi ensisijaisesti nähdä maineen rahallisen hyödyntämisen voimaannuttavana merkkipaaluna.
      Maailman menoa
      63
      4274
    7. Täysi ryöpytys Sanna Marinille ulkomailla.

      https://www.iltalehti.fi/ulkomaat/a/f699d84f-fa53-4dba-8718-2c395017fc55 Sanna Marinin kirja saa todella tylyn vastaanot
      Maailman menoa
      24
      3950
    8. "Rauhanomainen" miekkari hesassa: "Eläköön aseellinen vastarinta" - lakana

      Kyseessä on Suomen Palestiinalaisten yhdistyksen viime perjantaina järjestämä ”Hiljainen kynttiläkulkue Palestiinalaiste
      Maailman menoa
      108
      3702
    9. Vanhat miehet eivät muista

      Niinistö muistaa vain Marinin hölmistyneen ilmeen, mutta ei miksi möllötti sen näköisenä. Vanhanen taas ei muuten vaan
      Maailman menoa
      29
      3627
    10. Monella äärivasemmistolaisella C-paperit armeijasta

      Kuinka kävisi sodan tullen noille? Puolustusvoimat huomauttaa, että C-luokituksen saaneiden sijoittumisesta sodan aikan
      Maailman menoa
      69
      2713
    Aihe