我们是否有任何方式让窗口显示而不是SFML中的cmd?

时间:2014-01-17 09:05:14

标签: c++ sfml

我是初学者并在C ++ / SFML 2.1中开发游戏。我看到像SFML文件夹附带的乒乓游戏这样的例子。就像在这个游戏中一样,cmd窗口不会出现在游戏窗口中。我们如何在SFML中进行操作?

2 个答案:

答案 0 :(得分:0)

来自SFML FAQ:

  

在Code :: Blocks中,打开项目选项(Project Menu - > Properties)。在“构建目标”选项卡中,选择要在左侧更改的构建目标(大多数时间仅存在“调试和发布”),并在“控制台应用程序”右侧的下拉列表中将其类型选项更改为“ GUI应用程序“。

     

在Visual Studio中,转到项目选项(项目菜单 - >   属性)。在左侧的树中,展开“配置”   属性“树并展开”链接器“子树。选择”系统“   从子树中,在右侧的SubSystem字段中更改   “控制台(/ SUBSYSTEM:CONSOLE)”到“Windows(/ SUBSYSTEM:WINDOWS)”   单击该字段并使用下拉列表。

     

要维护可移植入口点(int main()函数),可以链接   你的程序针对小sfml-main.lib库的情况   Code :: Blocks / MinGW的Visual Studio或libsfml-main.a。

     

或者隐藏控制台,您也可以定义自己的控制台   图形应用程序的Windows入口点。

int WINAPI WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
> LPSTR lpszArgument, int nCmdShow)
  

替换你的int main()或int   使用此函数的main(int argc,char ** argv)将被调用   由程序执行时的操作系统就像   classical int main()函数。

答案 1 :(得分:0)

如果您正在使用GCC,只需在命令中添加-mwindows参数:

整个构建命令看起来像这样:

g++ -c main.cpp -I<sfml-install-path>/include -o main.o && g++ main.o -o build -I<sfml-install-path>/lib -mwindows -lsfml-graphics -lsfml-window -lsfml-system