• 6490阅读
  • 4回复

求助:用QT开发可定制化UI [复制链接]

上一主题 下一主题
离线chujb_chen
 
只看楼主 倒序阅读 楼主  发表于: 2010-11-08
— 本帖被 XChinux 执行加亮操作(2010-11-10) —
兄弟我想用QT开发一个可定制的UI,即UI上分几个模块,每个模块可以通过触摸的方式调整它自己的位置,这样,用户就可以自定义UI。不知道有那位大虾做过类似的开发,请多多指教。
目前的设想的实现过程有2个方式:
1、即时性UI定制
      就是所谓的“所见即所得”,在运行的UI直接进行定制,定制的效果即时显示出来;
2、通过设置的方式
      让UI处于一种编辑模式,然后对UI进行定制,保存定制结果,退出编辑模时候,定制的UI生效。

在这个过程中,遇到的技术点有:
1、模块动起来
      模块化设计UI上的各个部分,拖动模块,模块可以移动;如何让模块动起来呢?
2、模块内的控件无响应
      当点击并拖动模块的时候,模块内的控件不需要响应点击操作,需要屏蔽这个点击操作。
离线hqd_2008
只看该作者 1楼 发表于: 2010-11-08
LZ应该说得详细点,
不是很明白你的意思,
离线jetlee2012

只看该作者 2楼 发表于: 2010-11-08
有挑战性,模块动起来和选中不产生clicked事件不是难点吧!
以下是愚见:首先动起来很简单啊,在Qt dome文档里就有现成的例程,C++GUI Qt4编程这本书里面的第三章中也有例程,完成ui拖动的例程。具体函数不记得了。
拖动时内部无响应这个就不用操心了,貌似现在还没有拉风到带多点触控吧?
离线chujb_chen
只看该作者 3楼 发表于: 2010-11-09
回 1楼(hqd_2008) 的帖子
楼主应该见过IPad吧,IPad支持应用自定义位置,您拖动一个应用的图标到另外一个位置,这个应用会移动那个位置,而其他应用则会自动顺序移动位置。如果UX以模块化方式设计和开发,您就可以随意自定义您的UX界面了。现在IPad不支持自定义UX(用户体验层),如果有这样的产品,将是很好的卖点!
离线chujb_chen
只看该作者 4楼 发表于: 2010-11-09
回 2楼(jetlee2012) 的帖子
楼主提到的资料很有帮助,我仔细看看。
让一个控件动起来的确不是难点,难点在于模块。试想,一个模块之中可能由很多控件组成,当用手触摸或者用鼠标点击进行拖拽的时候(触控点不限制位置的情况下),模块内的控件是否都会一起移动,触控点处的响应如何控制?
我做过应用程序图标拖拽的处理,就是将应用程序图标拖拽到用户的“收藏的应用程序”区域,当你点击应用程序图标并进行拖拽操作的时候,应用程序会接受到点击的信号,导致应用程序启动,解决的方法就是让应用程序区域处于一种编辑状态,类似苹果的调整应用程序位置的“振动模式”,这个时候屏蔽对应用程序的点击信号。显然,在模块进行移动的过程中,也需要屏蔽对点击信号的响应,但如果这样的话,就走了前面说的老路,做不到“所见即所得”!
快速回复
限100 字节
 
上一个 下一个