我们的桌面应用程序需要在Mac,Windows和Linux上运行。这就是我们选择Qt的原因。之前,我们有三个独立的代码库用于这3个平台。Qt:哲学UI设计困境
在旧的实现中,我们用Close,Minimize,Maximize按钮绘制了我们自己的“窗口标题”。它在所有三个平台上看起来都一样。
这一次,我不太确定。我想让Qt为每个平台使用任何默认的标题和标题按钮,矩形的“X”,“_”窗口按钮,Mac上左手边的圆形按钮,以及Linux/Ubuntu等的其他内容。
这是一个明智的决定吗?推动我的一个事情是,我必须为我正在编写的窗口类,拖动代码,按钮工作以及编写自己的Windows标题所带来的其他内容编写调整大小的代码。
我注意到如果我使用这个,“Qt :: FramelessWindowHint”来删除标题,我会自动失去我的调整擒抱。有没有办法解决这个问题?另外你会如何去实现你自己的窗口拖动代码? (让你知道你想要用作“可拖动标题”的区域,好像我需要在该区域捕捉按钮,进入拖动模式,跟踪鼠标移动并根据增量移动窗口。类似的调整大小我以前在其他平台上做过,但我想问问Qt是否有一种机制允许我“开箱即用”?
听到了!任何给定窗口系统的用户都有他们习惯的外观和感觉(以及位置)。任何与此相背离的情况都会使他们不得不更加努力地弄清楚如何执行他们想要的操作,从而使应用程序感觉难以使用。正如这个答案所提到的:更少的编码和支持总是一件好事。 – 2011-02-03 20:20:40