在我的应用程序中,我使用 OptionSelector 从自行车站列表中进行选择。我还有一个地图组件,每个站都有地标。
当我点击一个地标时,它也会将 OptionSelector 更改为相应站的索引,因为这是很好的 UX。
不好的 UX 是 OptionSelector 如何响应这个索引变化,它自己动画,就好像它被用户的手指轻弹一样。换句话说,在用户点击地图标记并接收到他们需要的所有信息后很久,OptionSelector 仍在“旋转”到站的索引。
这是演示此行为的视频:https : //www.youtube.com/watch?v=jXKWlAmNYsw
我想让这个 OptionSelector 立即改变它的索引,没有动画。有没有办法做到这一点?
这是我目前做事的方式。如果这是错误的处理方式,我很高兴得到纠正。我使用 WorkerScript(一个 QML 线程,或多或少)来进行 API 调用。当这个 WorkerScript 返回时,它会像这样移动 OptionSelector:
WorkerScript {
id: queryStationsWorker
source: "../js/getstations.js"
onMessage: {
[...]
// Move the OptionSelector to the corresponding station's index.
stationSelector.selectedIndex = getLastStationIndex(lastStation.contents.stationName, stationsModel)
/*
* For the sake of clarity:
*
* getLastStationIndex() is a function which just returns an integer.
* lastStation is a U1DB database used for state saving.
* …Run Code Online (Sandbox Code Playgroud) 目前,我在 Gnome 桌面中使用 Unity Qt 面板,当我按下 Windows 键时,Unity 的破折号启动,我无法使用任何基于 compiz 的快捷方式。
当我登录到 Unity 2D 时,也会出现相同的行为,因为 Windows 键会启动破折号。
我不想更改我的 Compiz 快捷键,那么有什么方法可以将 Unity 2D 破折号的键盘映射更改为其他内容或完全禁用此快捷键?
Mark Shuttleworth最近在博客中谈到了在 11.10 版本中包含 Qt 库的决定,Jono Bacon对此进行了跟进。让我不喜欢 Qt 应用程序的事情是它们与 Ubuntu 的基于 Gtk 的主题不能很好地融合。我最近阅读了Ars Technica 的一篇文章,其中提到,通过一些努力,Qt 应用程序可以类似于 Gtk 应用程序。
是否有任何文档可以帮助我做到这一点,如果没有,至少有人知道如何去做吗?
我升级到 Ubuntu 16.04 LTS。但是缺少libqt4-core和libqt4-gui包。
如何在 16.04 上安装这些软件包?
我下载了http://qt-project.org/downloads
适用于 Linux 64 位的 Qt5 库
库格式为 .run
但是如果我尝试打开它,我会收到以下错误
sh ./qt.run
./qt.run: 1: ./qt.run: cannot open @8: No such file
./qt.run: 1: ./qt.run: ELF: not found
./qt.run: 1: ./qt.run: Syntax error: word unexpected (expecting ")")
Run Code Online (Sandbox Code Playgroud)
然后它会产生一个垃圾文件。
我安装了最新版本的 QtProject,所以现在我可以调试C++代码了。
第一次尝试调试时,我收到此错误:
ptrace: Operation not permitted.
Could not attach to the process. Make sure no other debugger traces this process.
Check the settings of
/proc/sys/kernel/yama/ptrace_scope
For more details, see /etc/sysctl.d/10-ptrace.conf
Run Code Online (Sandbox Code Playgroud) 我对新的“应用程序”开发者站点最近的公告(http://developer.ubuntu.com/2011/09/annoucing-the-ubuntu-app-developer-site/)感到有些困惑。我已经退出了 Ubuntu 开发,现在只关注新闻报道来判断操作系统的发展方向,并且没有意识到这即将到来。也许社区中的某个人可以为我澄清这一点。
我非常熟悉 Ubuntu、Linux、编程和打包,但我不确定 Ubuntu 应用程序和 Debian 包之间的概念和技术差异是什么。我查看了开发者社区文档,但没有找到直接的答案。可以将 Ubuntu 应用程序视为支持 Ubuntu 应用程序框架的特殊配置包吗?它有多灵活?例如,我可以在 Qt 中编写一个应用程序并仍然将它包装在一个应用程序中吗?
(顺便说一句,我有点担心 Ubuntu 正朝着这个方向发展。我知道 Ubuntu 应该探索支持应用程序开发和分发的多种途径以保持相关性。但对于像我这样的工程用户来说,这感觉很笨拙。虽然这些言论是无知的。在我知道发生了什么之前,我不应该形成一个可靠的意见。)
我正在运行 64 位 Ubuntu 14.04。
我得到的编译错误是:
In file included from ../../../Qt/5.4/gcc_64/include/QtOpenGL/qgl.h:39:0,
from ../../../Qt/5.4/gcc_64/include/QtOpenGL/qglshaderprogram.h:37,
from ../../../Qt/5.4/gcc_64/include/QtOpenGL/QGLShaderProgram:1,
from glwidget.h:5,
from glwidget.cpp:1:
../../../Qt/5.4/gcc_64/include/QtGui/qopengl.h:122:21: fatal error: GL/gl.h: No such file or directory
# include <GL/gl.h>
^
Run Code Online (Sandbox Code Playgroud)
奇怪的是,我似乎正确安装了 libGL.so 并符号链接到我的 Nvidia 343 显示驱动程序(我认为它也安装了 OpenGL 驱动程序)安装的 OpenGL 库。
$ ls -l /usr/lib | grep -i libgl
lrwxrwxrwx 1 root root 17 Jan 15 12:47 libGLESv1_CM.so -> libGLESv1_CM.so.1
lrwxrwxrwx 1 root root 22 Jan 15 12:47 libGLESv1_CM.so.1 -> libGLESv1_CM.so.343.36
-rwxr-xr-x 1 root root 48248 Jan 15 12:47 …Run Code Online (Sandbox Code Playgroud) 由于我更新到 Ubuntu 17.04,Qt5 应用程序(例如 Qt Creator)将不再使用 GTK 主题。我尝试使用qt5ct更改它,但它只有样式Fusion和Windows可用,即使包qt5-gtk-platformtheme安装。
如何解决这个问题?
编辑:我正在使用 Unity。
在全新安装 Ubuntu Gnome 15.10 后,qpdfview或QuitRSS等 Qt 应用程序突然停止继承全局 GTK 主题,在我的例子中为Numix。默认的 Adwaita 主题也是如此,所以很可能不是主题的错。看起来,这些应用程序总是使用 Cleanlooks Qt 主题,无论当前的 GTK 主题如何。
我在以前安装的 Ubuntu Gnome 上从来没有遇到任何主题问题。
安装qt4-qtconfig和使用不同的设置(GUI 风格:默认、cleanlooks 或 gtk+)对这些应用程序没有任何影响。
奇怪的是,qt4-qtconfig应用程序本身的主题是正确的。因此,在选择不同的主题后,例如“桌面设置(默认)”或“窗口”,此应用程序的主题会更改,但不会在qpdfview或 中更改QuiteRSS。安装技巧libgnomeui-0(此处提到)也无济于事。
有没有人遇到相同的情况并知道解决方法?
qt ×10
gtk ×3
themes ×2
14.04 ×1
15.10 ×1
16.04 ×1
c++ ×1
compiling ×1
debugging ×1
development ×1
gnome ×1
installation ×1
keyboard ×1
nvidia ×1
opengl ×1
pygtk ×1
qml ×1
ubuntu-sdk ×1
ubuntu-touch ×1
unity-2d ×1