Keresés

Hirdetés

Új hozzászólás Aktív témák

  • vz12

    tag

    válasz Tomi_78 #2073 üzenetére

    Hello!

    Miért kell futásidőben létrehozni? Helyzettől függően változik a tartalma?
    Amúgy szerintem neked TPopupMenu kell inkább.
    Ennek van egy "items" property-je, ami tartalmazza az egyes menüpontok objektumait szépen sorban, és amelyikhez van "onclick", az végrehajtja az ottani kódot. Azt hiszem, hogy az egyes menüpontokat lehet "disabled/enabled" állapotba is tenni (valahogy), tehát én inkább tervezési időben rátenném a formra a popup menüt, meg az elemeit, meg az onclick-eket, futásidőben legfeljebb ki/bekapcsolgatnám a menüpontokat helyzettől függően.
    Vagy TÖBB popup menüt is lehet csinálni, és mindig a megfelelőt kell aktiválni.

    Én sosem használtam Lazarust, csak régebben "rendes" Delphi-t, de szerintem ez nem nagyon különbözhet egymástól.

    Találtam Lazarushoz linket:
    [link]

  • Fire/SOUL/CD

    félisten

    válasz Tomi_78 #2073 üzenetére

    Azt tudom javasolni Én is, amit vz12 kolléga is, ne foglalkozz futásidejű létrehozással (már ami a popup-okat illeti), sokkal egyszerűbb IDE-ben, a TpopupMenu objektumot használni, ebből annyit dobhatsz a form-ra, amennyit csak szeretnél, duplaklikkel meg szerkesztheted őket a beépített editorral ( elem neve, felirata és minden egyes elem onclick eseményét is). Mindenféle programozás nélkül, ha hozzárendelsz egy pl. Button-hoz egy popup-t(egyszerre értelem szerűen csak 1-t, de a létrehozott popup menük közül bármelyiket futás időben is Button1.PopupMenu:=TPopupMenu(PopupMenu2);), akkor az úgy fog működni, hogy a gombon jobb egérrel kattintva fog megjelenni.
    Le is lehet tiltani (futás időben is, ha ez az igény), hogy megjelenjen avagy sem jobb egérre, ehhez az AutoPopup tulajdonságot lehet használni, pl:
    Button1.PopupMenu.AutoPopup:=False;, ez elrejti a Button1 popupját...

    [kép] | [kép]

    [ Szerkesztve ]

    Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)

Új hozzászólás Aktív témák