KINGx - Das inoffizielle PlayStation Forum & News Portal

Normale Version: VLF Lib - Menu Hilfe
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Community,
ich habe eine Frage zu vlf lib:

Also ich habe das Menu in der vlf lib geschrieben, noch ohne richtige Funktionen.

Jetzt kommt mal nur ein teil des Codes:

Code:
...
....

int MenuSel(int sel)
{
    switch(sel)
    {
        case 0:
            //funktion: Text
            break;
        
        case 1:
            //funktion: Text
            break;
            
        case 2:
            Exit();
            break;
        
    }
    return VLF_EV_RET_NOTHING;

}

....
...


Also, wenn ich im Menü auf den ersten Punkt klicke, kommt ja noch nichts. Wie kann ich Text in der vlf lib anzeigen lassen sodass die Menüpunkte nicht mehr sichtbar sind, weil wenn ich die normale Textausgabe benutze wird ja der text über die Menüpunkte drüber geschrieben. Was muss ich machen?

Lg

vlfGuiCancelCentralMenu(void);
Diese Funktion vor der aufzurufenden Funktion ausführen (also bevor der Text angezeigt werden soll). Diese entfernt / cancelt ein aktives vlfGuiCentralMenu!
Text zeigst du folgendermaßen an:

VlfText text;
text = vlfGuiAddText(x_pos, y_pos, "Text");

Um den Text wieder zu entfernen: vlfGuiRemoveText(text);
Anderes Problem: Wie benutzt man vlfGuiBottomDialog(VLF_DI_CANCEL, VLF_DI_ENTER, 1, 0, VLF_DEFAULT, Funktion); bei einem Switch Case?

Wenn ich im Menü Fall 1 (case 0Smileanklicke, kommt der Text mit dem Fußtext, aber wenn ich kreis drücke wird einfach der Text bei Fall 1 drübergeschrieben, ich will aber wieder ins Menü.

Code:
int MenuSel(int sel)
{



    switch(sel)
    {
        case 0:
             vlfGuiCancelCentralMenu();
             text = vlfGuiAddText(100, 40, "hier ist ein Text");


vlfGuiSetTextScrollBar(text,  90);

break;
        
        case 1:
            vlfGuiCancelCentralMenu();
            text = vlfGuiAddText(100, 40, "Hier ist ein text");


vlfGuiSetTextScrollBar(text,  90);

            break;



        case 2:

            vlfGuiCancelCentralMenu();
            text = vlfGuiAddText(100, 40, "Hier ist ein Text");
          

vlfGuiSetTextScrollBar(text,  90);

break;
        
        case 3:
        vlfGuiCancelCentralMenu();
        text = vlfGuiAddText(100, 40, "TEXT.");
            vlfGuiSetTextScrollBar(text,  90);
            break;


  
        case 4:
            Exit();
            break;
            



    }
    return VLF_EV_RET_NOTHING;

}

void MainMenu(int sel)
{

vlfGuiBottomDialog(VLF_DI_CANCEL, VLF_DI_ENTER, 1, 0, VLF_DEFAULT, MenuSel);


    char* items[] = {
        "Exploits",
        "Firmwares",
        "PRE-IPL/IPL",
        "Credits",
        "Beenden"
    };
    vlfGuiCentralMenu(5,items,0,MenuSel,0,0);


}

PHP-Code:
// Globale Variablen
int menu_sel//Die Position des Items, auf das der Focus gesetzt werden soll
VlfText text;

// Funktionen
int BackToMain(int);
int MainMenu(int);
int OnMainMenu(int);

//Ruft die Main-Funktion auf (enter gibt an, ob im Main Menu X oder O gedrückt wurde)
int BackToMain(int enter
{
if(!
enter)
{
vlfGuiCancelBottomDialog();
vlfGuiRemoveText(text);
MainMenu(menu_sel);
}

return 
0;
}

int OnMainMenu(int sel)
{
switch(
sel)
{
case 
0:
{
menu_sel 0;
vlfGuiCancelCentralMenu();
vlfGuiBottomDialog(VLF_DI_BACKVLF_DI_ENTER01VLF_DEFAULTBackToMain);
text vlfGuiAddText(50100"Text");
}
break;
}
return 
0;
}

int MainMenu(int sel)
{
// Menu Items
char *items[] = {
        
"Exploits",
        
"Firmwares",
        
"PRE-IPL/IPL",
        
"Credits",
        
"Beenden"
};

vlfGuiCentralMenu(sizeof(items) / sizeof(char*), items0OnMainMenu00);
return 
0;

Code ist ungetestet, aber in etwa so sollte es funktionieren siesta

Referenz-URLs