Portál AbcLinuxu, 12. května 2025 06:11
Pracuji na programu, kde potrebuji mit ovladaci graficke menu a to ve stylu Midnight Commandera.
Nemate nekdo ukazkovy kus kodu?
Je s tim velka prace, sice to je dulezite, ale cas bych potreboval venovat jinym vecem.
void handle_help(MENU* menu);
void handle_end(MENU* menu);
ITEM* mmenu_items[2];
MENU* mmenu;
void init_menu() {
mmenu_items[0] = new_item("Napoveda", "");
set_item_userptr(mmenu_items[0], handle_help);
mmenu_items[1] = new_item("Konec", "");
set_item_userptr(mmenu_items[1], handle_end);
mmenu = new_menu(mmenu_items);
}
void toogle_menu() {
if (post_menu(mmenu)==E_POSTED) unpost_menu(mmenu);
else loop_menu();
}
void loop_menu() {
for (;;) {
int c = getch();
switch (c) {
case KEY_DOWN: menu_driver(mmenu, REQ_DOWN_ITEM); break;
case KEY_UP: menu_driver(mmenu, REQ_UP_ITEM); break;
case KEY_F(10): toogle_menu(); break;
case KEY_RETURN: {
//Got return, execute what do I need
ITEM* cur;
void (*p)(char *);
cur = current_item(mmenu);
p = item_userptr(cur);
p(mmenu);
break;
}
}
}
}
void handle_help(MENU* menu) {
mvaddstr(5,5, "Pomoz si sam!");
}
void handle_end(MENU* menu) {
finish(0);
}
tak jsem vzhledem k tomu, ze se mi to cele nechtelo procitat, radeji ceknul Ncurses jako takove a pustil se do toho sam.
Tady se aspon prokazuje, ze lennost je nekdy velmi uzitecna vec a nuti lidi premyslet .
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.