gpt4 book ai didi

c++ - 为什么不显示我的窗口? (诅咒)

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:18:06 26 4
gpt4 key购买 nike

我正在尝试创建这个程序,我在 stdscr 上并排打印两个窗口。我创建了“菜单”类来在一个地方声明整个屏幕的所有内容,我在 main 中创建了一个“菜单”对象(“menu_principal”),但没有任何反应。我添加了两个函数来查看我的对象是否正在创建,它是否已创建。

为什么窗口不显示?

这是“菜单”类:

class menu{
public:
menu(int row, int col){

display = newwin((row-4), (col/2), 2, 0);
getmaxyx(display, drow, dcol);

help = newwin((row-4), (col/2), 2, (col/2));
getmaxyx(help, hrow, hcol);

refresh();

box(display, 0, 0);
wrefresh(display);

box(help, 0,0);
wrefresh(help);
refresh();
}

int prueba1(){
return (this->drow);
}
int prueba2(){
return (this->hrow);
}
private:
int y, x, drow, dcol, hrow, hcol;
WINDOW * display;
WINDOW * help;



};

这是主要部分:

int main(int argc, char const *argv[]) {
int row=0, col=0;
initscr();
refresh();
cbreak();
getmaxyx(stdscr, row, col);

menu* menu_principal = new menu(row, col);
refresh();

cout << row;
cout << menu_principal->prueba1();
cout << menu_principal->prueba2();

最佳答案

普通的 refresh() 调用正在覆盖特定于窗口的 wrefresh(display)刷新(帮助)。如果示例是完整的,有人可以指出执行此操作的特定代码行。

(cout 调用没有多大帮助:您应该将该信息写入文件而不是屏幕)。

关于c++ - 为什么不显示我的窗口? (诅咒),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48001412/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com