Wiki-kopiopeilipalvelin

Tämä on pascal.chatin wikin peilipalvelin. Muokkaus, historia ja kirjautuminen ovat siellä.

TPopupMenu/fi

Deutsch · English · Français · Suomi · Русский · 日本語

TPopupMenu on ponnahdusvalikko, joka avautuu työpöydälle, kun kohteen päällä klikataan hiiren kakkospainikkeella.

Se on ns. näkymätön komponentti: eli jos kuvake on valittu Komponentti-paletin Standard-välilehdeltä ja asetettu lomakkeelle, se ei tule näkyviin ajonaikana ennenkuin kohteen päällä klikataan hiiren kakkospainiketta jolloin näkyviin tulee valikkorakenne joka on sille määritelty.

Valikkomuokkaimeen pääsee ponnahdusvalikon kuvaketta klikkaamalla hiiren kakkospainikkeella lomakkeella.

Ponnahdusvalikon tekeminen

Seuraavassa vaiheessa nähdään kuinka voidaan antaa ponnahdusvalikko komponentille lomakkeella:

Nyt kaikki tämä saa aikaan ponnahdusvalikon, joka näkyy sovelluksen ajon aikana ja antaa käyttäjälle mahdollisuuden klikata ponnahdusvalikon eri kohtia. Se ei kuitenkaan todellisuudessa tee mitään. Jos halutaan, että valikon eri kohdat tekevät jotain, niin on lisättävä tapahtuma jokaiselle valikon kohdalle, joka reagoi klikkaamiseen.

Seuraavaksi selitetään, miten valikkoklikkausten tapahtumia tehdään ja muokataan komponenttimuokkaimen avulla.

Laitetaan ponnahdusvalikko tekemään jotakin

pascal
procedure TForm1.popLoadClick(Sender: TObject);
begin

end;
pascal
procedure TForm1.popLoadClick(Sender: TObject);
begin
  if OpenDialog1.Execute then                            //only if a file is selected
    try                                                  //try
      Image1.Picture.LoadFromFile(OpenDialog1.Filename); //to load that file
    except
    end;
end;
pascal
procedure TForm1.popStretchClick(Sender: TObject);
begin
  popStretch.Checked := not popStretch.Checked;  //mark/checked on/off
  Image1.Stretch := popStretch.Checked;          //Image1 streched yes/no
end;

procedure TForm1.popCenterClick(Sender: TObject);
begin
  popCenter.Checked := not popCenter.Checked;  //mark/checked on/off
  Image1.Center := popCenter.Checked;          //Image1 center yes/no
end;

Ponnahdusvalikko omalla tavalla

Voi olla että ponnahdusvalikko halutaan näyttää jollain muulla tavalla. Se voidaan toteuttaa PopupMenu.PopUp.

Yksinkertainen esimerkki:

pascal
procedure TForm1.Button1Click(Sender: TObject);
begin
  PopupMenu1.PopUp;   //Näytä ponnahdusvalikko
end;

Katso myös


From the Free Pascal wiki, page "TPopupMenu/fi", as it stood on 2020-03-01 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Versio 2, viimeksi muokannut WikiArchive .