c++ - SFGUI 渲染问题 C++

标签 c++ user-interface visual-glitch

我正在制作一个服务器菜单系统,但是当我从 sfgui 系统中删除所有项目并移动到另一个游戏状态时,在我将在一分钟内解释的情况下,前一个游戏状态的标签是可见的,首先让我向您展示这个问题。

服务器菜单: Server Menu.

在这里您可以看到问题: Here you can see the issue

移除代码如下。

void S_ServerMenu::Exit() {
  ServerSelectWindow->Show(false);
  desktop.RemoveAll();
  desktop.Refresh();
}

但是这个问题只发生在刷新服务器这里是刷新代码。

void S_ServerMenu::RefreshServers() {
  Document d;
  d.Parse<0>(LoadInServers().c_str());
  servers = ServerParser(d);
  ServerListTable->RemoveAll();
  ServerListTable->RefreshAll();
  for(int i = 0; i < servers.size(); i++) {
    auto label = sfg::Label::Create();

    label->SetText(servers[i].Name);

    MenuItem utm;
    utm.lbl = label;
    utm.index = i;
    utm.owner = this;
    label->SetAlignment(sf::Vector2f(0, 0));
    label->FontSize = 16;
    label->SetParent(ServerListTable);
    label->cont = ServerSelectWindowContainer;
    ServerListTable->Attach(label, sf::Rect<sf::Uint32>(1, i, 1, 1), sfg::Table::FILL | sfg::Table::EXPAND);

    label->GetSignal(sfg::Label::OnLeftClick).Connect(std::bind(&MenuItem::Clicked, utm));
  }
  ServerSelectWindow->RefreshAll();
}

你们中有人知道如何解决这个问题吗?如果这样的话,那就太好了。

最佳答案

我通过为每个屏幕创建一个单独的桌面来解决这个问题。

关于c++ - SFGUI 渲染问题 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30970599/

相关文章:

c++ - 添加 'union' 关键字对预定义结构的影响

user-interface - 是否有Gtk电子表格小部件

android - 访问更新 ListView 的第一个元素会导致 System.ArgumentOutOfRangeException

c++ - 如何有选择地使 QWidget 接受鼠标单击的焦点?

python - OS X El Capitan 上的 SDL_image 视觉故障

java - 单击边框时 JComboBox 弹出窗口立即出现和隐藏(糟糕的用户体验)

c - GtkRevealer 使 TextView 绘图出现故障

c++ - C++中链表实现的问题

c++ - 为什么在这种情况下删除了祖 parent 的构造函数?

c++ - char* 不应该隐式转换为 std::string 吗?