gpt4 book ai didi

Qt:UI 设计哲学困境

转载 作者:行者123 更新时间:2023-12-02 21:15:26 26 4
gpt4 key购买 nike

我们的桌面应用程序需要在 Mac、Windows 和 Linux 上运行。这就是我们选择 Qt 的原因。之前,我们为这 3 个平台提供了 3 个独立的代码库。

在旧的实现中,我们用“关闭”、“最小化”、“最大化”按钮绘制了自己的“窗口标题”。它在所有三个平台上看起来都是一样的。

这一次,我不太确定。我想过让 Qt 使用每个平台的默认标题和标题按钮,矩形的“X”、“_”窗口按钮,Mac 左侧的圆形按钮,以及 Linux/Ubuntu 等的任何内容。

这是一个明智的决定吗?促使我这样做的事情之一是,我必须为我正在编写的窗口类编写调整大小代码、拖动代码、按钮工作以及编写您自己的窗口标题所附带的所有其他内容。

我注意到,如果我使用“Qt::FramelessWindowHint”来删除标题,我也会自动失去调整大小的抓斗。有办法解决这个问题吗?另外,您将如何实现自己的窗口拖动代码? (假设您知道要用作“可拖动标题”的区域。似乎我需要捕获该区域上的按钮,进入拖动模式,跟踪鼠标移动并根据增量移动窗口。类似的调整大小。我以前在其他平台上做过,但我想问Qt是否有一种机制允许我“开箱即用”地做到这一点?

最佳答案

I thought of letting QT use whatever's default caption and caption buttons for each platform

请这样做。作为 Mac 用户,没有什么比“通用”界面更令人困惑的了,因为“通用”界面应该在任何地方看起来都一样。 Windows风格的界面令人困惑。 Mac 风格的界面是我习惯的,也是我想要的。

如果您必须编写(以及维护和支持)更少的代码,那就更好了。

尽可能使用“native”。编写尽可能少的代码。

关于Qt:UI 设计哲学困境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4891095/

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