AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1128586
Accepted
user3554851
user3554851
Asked: 2019-03-26 08:28:35 +0800 CST2019-03-26 08:28:35 +0800 CST 2019-03-26 08:28:35 +0800 CST

如何在 C++ 中创建一个简单的 GUI;没有 Qt、Gtk 或 Mondo?[复制]

  • 772
这个问题在这里已经有了答案:
如何为 Ubuntu 创建非常简单的 GUI 应用程序? (2 个回答)
3年前关闭。

新手在这里使用 Ubuntu 18.04 LTS

我来自简单的 Windows 世界,我正在尝试编写一个 Windows 窗体对话框应用程序。在编写代码时,我发现我们可以在 Mondo、Qt、Gtk 和 Tkintker 之间进行选择。但是,我也在寻找对像 FireFox 这样的 Linux 应用程序如何显示 GUI 的理解?我的意思是我确信这些应用程序使用了在 Mondo、Qt 和 Gtk 出现之前就已经存在的东西,对吧?

有谁知道一个用 C++ 编写的简单 github 项目,希望简单意味着 5 行代码,因为说 Hello World 并不需要太多。

我尝试安装 ubuntu-sdk-ide,之前在一篇 5 年前的帖子中提到过,但是,安装后我尝试启动它,但它只显示“QtCreator,容器后端返回未知错误状态。这是一个错误,永远不会发生,请联系开发商。”

注意:ubuntu-sdk 在这里并说它对 14.04 是安全的。当前是 18.04,因此任何重复的帖子都会指向损坏的 14.04,它并没有说明像 FireFox 这样的真实应用程序使用的是什么。 https://docs.ubuntu.com/phone/en/platform/sdk/installing-the-sdk

application-development c++ ubuntu-sdk
  • 1 1 个回答
  • 1684 Views

1 个回答

  • Voted
  1. Best Answer
    drzow
    2019-03-26T14:00:49+08:002019-03-26T14:00:49+08:00
    1. 大多数应用程序都建立在 Gtk 和 Qt 等 GUI 工具包上。这些工具包的大部分早期、大量开发都是由此类应用程序驱动的。
    2. 其中许多工具包现在已有二十多年的历史,因此它们早于当今使用的大多数应用程序。
    3. 工具包本身(或至少它们在 X11 中的实现)都构建在 Xlib 之上。您可以尝试遵循 Xlib 教程,例如https://tronche.com/gui/x/xlib-tutorial/,但很有可能您会遇到一些不起作用的东西。Xlib 开发非常挑剔。至少,您会开始体会到 Gtk 和 Qt 等工具包提供了多少抽象。来自 Windows 世界,这些工具包更类似于 Win32 GUI 开发而不是 Xlib 开发。

    这些是事实,我将以推测作为结论,因为 OP 似乎对 Firefox 特别感兴趣:我相信 Firefox 实际上是直接在 X11 中构建的,或者更具体地说是使用它自己的内部 GUI 工具包。虽然它源自 Netscape Navigator(早于 Gtk 和 Qt 的普遍使用),但 Navigator 似乎使用了 Motif(一个更老的工具包,它本身构建在一个名为 X-Toolkit 的库之上),并且是 Navigator 的主要变化之一-> Firefox(或早期称为 Phoenix)是该界面的丢失。这发生在 Gtk 和 Qt 等现代工具包激增时,我怀疑Firefox 开发人员并没有选择一方,而是推出了自己的方法。

    • 3

相关问题

  • 应用程序通常在哪里存储数据?

  • 我应该为 Vala 使用哪个 IDE?

  • 安装用户应用程序时,“最佳实践”建议它们位于何处?

  • 为 Python 应用程序设置构建系统

  • 如何在 Ubuntu 上开发 .NET 应用程序?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve