其他分享
首页 > 其他分享> > c – 跨平台,开源,简单的GUI图书馆

c – 跨平台,开源,简单的GUI图书馆

作者:互联网

我没有很多GUI库的经验,我正在寻找一个跨平台的,没有控制主循环,并且需要最少量的代码来设置一个带文本输入的简单窗口/输出.我也希望它是开源的.

解决方法:

我已成功在非主线程中使用GTK.它不像Qt那么光滑,但它肯定会完成工作.另外,它有一些不错的C绑定.

http://www.gtk.org/

例如:

#include <gtk/gtk.h>
#include <gdk/gdk.h>
#include <thread>


void myCoolThread()
{
  // You can setup all of your gtk stuff here...
  GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_widget_show(window);
  gtk_main();
  gdk_threads_leave();
}

int main(int argc, char **argv)
{
  g_thread_init(NULL);
  gdk_threads_init();
  gdk_threads_enter();
  gtk_init(&argc, &argv);

  auto gtkThread = std::thread(myCoolThread);

  while(1)
  { sleep(1); } // Do whatever other work here...

  gtkThread.join();

  return 0;
}

标签:c,user-interface,cross-platform,open-source
来源: https://codeday.me/bug/20190726/1543562.html