Question

La question est auto-expliquer, comment créer un menu tearoff en utilisant GtkAda? Je ne peux pas le faire fonctionner.

Merci.

Était-ce utile?

La solution

Si vous avez ajouté le code que vous avez à votre question, il serait plus descriptif.

J'ai écrit un peu de code pour montrer l'utilisation du menu déchirage avec GtkAda, ce n'est pas si difficile, mais il peut être difficile de trouver de la documentation à ce sujet:

function CreateFileMenu(tearOff : boolean) return Gtk_Menu is
    fileMenu : Gtk_Menu;
    newFile, loadFile, saveFile, saveAs, close : Gtk_Menu_Item;
begin
    --  Create the menu:
    Gtk_New(fileMenu);

    --  Add the tear off item to the menu if required:
    if tearOff then
        declare
           tear : Gtk_Tearoff_Menu_Item;
        begin
           Gtk_New(tear);
           Append fileMenu, tear);
           Show(tear);
        end;
    end if;

    --  Create the rest of the menu items:
    Gtk_New_With_Mnemonic(newFile, "_New");
    Gtk_New_With_Mnemonic(loadFile, "_Load");
    Gtk_New_With_Mnemonic(saveFile, "_Save");
    Gtk_New_With_Mnemonic(saveAs, "Save _as...");
    Gtk_New_With_Mnemonic(close, "_Close");

    --  Add the items to the menu:
    Add(fileMenu, newFile);
    Add(fileMenu, loadFile);
    Add(fileMenu, saveFile);
    Add(fileMenu, saveAs);
    Add(fileMenu, close);

    return fileMenu;
 end CreateFileMenu;

La structure declare/begin/end vous permet de déclarer des variables dans le temps d'exécution.

Le paramètre boolean vous permet de décider si vous voulez qu'il soit un menu larme lorsque vous créez. La fonction crée simplement le menu de sorte que vous auriez à ajouter à une barre de menus (par exemple) plus tard.

Autres conseils

Je ne sais pas si cela est ce que vous cherchez, mais le manuel de référence GtkAda dit :

  

Tous pour les garder visibles à l'écran à tout moment les menus GtkAda peuvent être « Déchirer » menus, i.e. vous pouvez les détacher de leurs parents (soit une barre de menus ou un autre menu)).

Il semble donc que si vous n'avez rien à faire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top