Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Delphi - MENU A DISCESA
Forum - Delphi - MENU A DISCESA

Avatar
micc84 (Normal User)
Newbie


Messaggi: 8
Iscritto: 19/04/2010

Segnala al moderatore
Postato alle 20:56
Giovedì, 06/05/2010
Ciao a tutti,

Mi chiedevo se fosse possibile (e tramite quali componenti), creare un menu laterale a discesa, cerco di spiegarmi meglio:
una cosa tipo 5 bottoni sul lato destro della form, cliccando su quello in cima sotto devono apparire le voci relative a quella sezione, e ovviamente i restanti 4 bottoni devono spostarsi sotto, e via dicendo per ogni bottone...
qualcuno ha idee in proposito???
grazie:rotfl:

PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 13:54
Venerdì, 07/05/2010
Per menu intendi proprio il TMainMenu o ti va bene costruirlo anche con altri elementi? (intendo pannelli, label ecc...)?

PM Quote
Avatar
micc84 (Normal User)
Newbie


Messaggi: 8
Iscritto: 19/04/2010

Segnala al moderatore
Postato alle 14:09
Venerdì, 07/05/2010
no no, non il Tmainmenu, quello lo so usare.
mi chiedevo appunto se con l'utilizzo di altri componenti ( panel, label, button popupmenu) fosse possibile creare un menu come ho descritto sopra! ( spero fosse chiaro ).
fin'ora sono solo riuscito ad ottenere la comparsa di un popupmenu direttamente sotto un tpanel...

PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 14:41
Venerdì, 07/05/2010
certo... basta che ti gestisci un po' le coordinate di posizioni... Ora è difficile dare un'indicazione specifica perchè il codice cambierebbe per ogni scelta su come VOLERLO questo menu...

Ad esempio se voglio un menu "Clicca Qui" che quando ti ci metti su diventa verde e si aprono i suoi sottomenu, puoi impostare un pannello per il menu principale (Panel1) e altri pannelli inizialmente invisibili per i menu secondari.
Poi sull'evento OnMouseMove puoi mettere:
Codice sorgente - presumibilmente Plain Text

  1. Panel2.Visible:= True;
  2. Panel3.Visible:= True;
  3. ...
  4. Paneln.Visible:= True;
  5. Panel2.Left:= Panel1.Left
  6. Panel2.Top:= Panel1.Top+Panel1.Heigth;
  7. Panel3.Left:= Panel1.Left;
  8. Panel3.Top:= Panel1.Top+Panel1.Heigth+Panel2.Heigth;



Insomma questo è un esempio, poi te ne puoi creare di tuoi personalizzati :k:

PS: non sono sicuro che funzioni alla perfezione perchè l'ho inventato al momento e non l'ho provato, quindi potrebbe esserci qualche errore... Insomma prova e vedi... Fammi sapere poi che risultato hai avuto...

Ultima modifica effettuata da a_butta il 07/05/2010 alle 14:42
PM Quote
Avatar
micc84 (Normal User)
Newbie


Messaggi: 8
Iscritto: 19/04/2010

Segnala al moderatore
Postato alle 17:55
Venerdì, 07/05/2010
fatto grazie! si in pratica mi sono reaòlizzato il menu che volevo andando a impostare le varie proprietà visible e le coordinate dei vari tasti e mi funziona... ora... se io volessi diciamo evitare in ogni programma che faccio di fare copia incolla di codice... potrei come dire implementare il mio menu come se fosse un componente?

PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 19:37
Venerdì, 07/05/2010
Dovresti "creare" un componente, ma sinceramente non so proprio da dove partire perchè non mi sono mai interessato della cosa, mi dispiace...
Però potresti ad esempio creare una serie di procedure da mettere in una dll da usare ogni volta che crei questo menu...

PM Quote