简介 使用Qt的时候,经常会遇到英文问题,例如:QMessageBox中的按钮.QLineEdit.QSpinBox.QScrollBar中的右键菜单等.通常情况下,我们软件都不会是纯英文的,那么如何处理这些问题呢?其实这也属于国际化的一部分. 下面,以中英文切换为例来为大家分享,其它语言切换类似. 简介 查找翻译文件 加载翻译文件 切换语言 查找翻译文件 qt_zh_CN.qm 见名知义,这正是处理中文的翻译文件. 我们可以从Qt的安装目录中找到它,以我的目录为例:D:\Qt\Qt5.5.1\…
来源:http://blog.sina.com.cn/s/blog_a6fb6cc90101art3.html 在编写Qt程序的时候,总会碰到中文问题,一直都很困惑,原本在使用QLineEdit的时候总会出现右键英文的情况,开始的时候是将右键功能屏蔽掉.使用setContextMenuPolicy(Qt::NoContextMenu)来设置无右键菜单,但是后来发现这虽然省事,但是有不足之处,密码框可以没有右键菜单.不可复制.粘贴,但是普通的文本框还是得需要此项功能的,所以就摸索着如何实现,做起来…
简介 使用Qt的时候,经常会遇到英文问题,例如:QMessageBox中的按钮.QLineEdit.QSpinBox.QScrollBar中的右键菜单等.通常情况下,我们软件都不会是纯英文的,那么如何处理这些问题呢?其实这也属于国际化的一部分. 下面,以中英文切换为例来为大家分享,其它语言切换类似. 简介 查找翻译文件 加载翻译文件 切换语言 查找翻译文件 qt_zh_CN.qm 见名知义,这正是处理中文的翻译文件. 我们可以从Qt的安装目录中找到它,以我的目录为例:D:\Qt\Qt5.5.1\…
WinForm -- 为TextBox文本框添加鼠标右键菜单 1. 新建一个WinForm项目,放置一个TextBox控件 2. 从工具箱拖进来一个ContextMenuStrip 3. 将TextBox控件的ContextMenuStrip属性设置为 --> 拖进来的ContextMenuStrip控件名称 4. 为ContextMenuStrip 的Item属性添加值,也就是将来菜单显示出来的菜单项. 5.点击Item属性进行添加 6. 添加菜单项,以及菜单项展现给用户的Text属性 7.…
一.QLineEdit说明 QLineEdit是单行文本框,不同于QTextEdit,他只能显示一行文本,通常可以用作用户名.密码和搜索框等.它还提供了一些列的信号和槽,方便我们使用,有兴趣的小伙伴可以直接去看帮助文档,我在这里就不多废话了.但是呢,我在这里却要单独的说几个接口,因为他们很容易被人忽略,但是却又是一个很好用.可以经常用到的功能. addAction(QAction *action, ActionPosition position):可以在编辑框的开始或者末尾添加一个action,…
1.解决Win平台中文显示 1.1首先解决win平台上中文显示乱码问题 1)首先查看qt creator的编码格式 通过->编辑->选择编码 查看. 2)如果qt creator的编码格式是utf8,并且项目里的汉字是utf8类型时 需要添加头文件: #include <QTextCodec> 在main()函数加入: QTextCodec *codec = QTextCodec::codecForName("utf8"); QTextCodec::setCod…
一.功能概述 说起右键菜单,之前Qt之自定义QLineEdit右键菜单这篇文章中我已经讲述过3种右键菜单的实现方式,今儿也是在啰嗦一下,针对QListWidget类在定制一下右键菜单,我使用的具体方式呢,是直接重写了contextMenuEvent方法,在这个方法中弹出右键菜单. 二.效果展示 如图1是针对QListWidget定制的右键菜单,美观程度一般,但是功能基本实现 图1 QListWidget右键菜单 三.代码讲解 右键菜单在相关文章小节中我已经给出了一些文章,关于右键菜单的弹出逻辑我…
#QT学习之窗口右键菜单 QWidget 及其子类都有右键菜单,主要因为其有两个与右键菜单相关联的函数: Qt::ContextMenuPolicy contextMenuPlicy() const void setContextMenuPolicy( Qt::ContextMenuPolicy policy) 可以看到这里使用的是一个枚举类型: Constant Value Description Qt::NoContextMenu 0 the widget does not feature…
导读 正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离.这样,美工设计人员和逻辑实现者可以各司其职而不受干扰.更重要的是,由于界面和逻辑处理是分离的,低耦合性使得代码重构的工作量可以减少到最小.QSS和CSS的语法几乎一致,除了Qt自身增加的一些属性之外,其余的属性都可以在CSS2或CSS3中找到对应的属性.因此,如果曾经有过CSS的使用经验,那么QSS的使用将游刃有余.关于QSS的使用实践,打算撰写一…
导读 正如web前端开发中CSS(Cascade Style Sheet)的作用一样,Qt开发中也可以使用修改版的QSS将逻辑业务和用户界面进行隔离.这样,美工设计人员和逻辑实现者可以各司其职而不受干扰.更重要的是,由于界面和逻辑处理是分离的,低耦合性使得代码重构的工作量可以减少到最小.QSS和CSS的语法几乎一致,除了Qt自身增加的一些属性之外,其余的属性都可以在CSS2或CSS3中找到对应的属性.因此,如果曾经有过CSS的使用经验,那么QSS的使用将游刃有余.关于QSS的使用实践,打算撰写一…
使用 PySide2 开发 Maya 插件系列三:qt语言国际化(internationalization) 前言: 这是 qt for python 的语言国际化,基于 UI 的,python 也有自身的语言国际化,两者是不同的. 先来看最终效果: 前期准备: 这次创建一个 main window 在 menu bar 加一个 language 的 menu: 我们还要对 action 进行一些设置,如下: 生成 .py 文件: 生成代码: # -*- coding: utf-8 -*- #…
作者:ComponentCN 出处:www.componentcn.com 2011年11月02日 阅读: DotNetBar很多子控件的系统文本.提示信息等都是可以本地化的,可以转化为多种语言,控件提供DotNetBarManager.LocalizeString事件来进行每个控件的系统文本汉化.如果是想进行全局汉化所有DotNetBar 控件,则可以使用 LocalizationKeys.LocalizeString 事件来进行汉化,如对MessageBoxEx控件进行汉化. 具体请看下面的…
Qt 元对象系统(Meta-Object System) Qt的元对象系统基于如下三件事情: 类:QObject,为所有需要利用原对象系统的对象提供了一个基类. 宏:Q_OBJECT,通常可以声明在类的私有段中,让该类可以使用元对象对象的特性,比如动态属性,信号和槽. 编译器:元对象编译器(moc)为每个QObject子对象自动生成必要的代码来实现元对象特性. moc工具会读入C++的源文件,如果它发现了一个或者多个声明了Q_OBJECT宏的类,它就创建另一个C++源文件,为每个类生成包含元对象…
简述 Qt 的资源系统用于存储应用程序的可执行二进制文件,它采用平台无关的机制.当你的程序总需要这样的一系列文件(图标.翻译文件等)并且不想冒丢失某些文件的风险时,这就显得十分有用. 资源系统基于 qmake.rcc(Qt 资源编译器) 和 QFile 之间的紧密合作. 简述 资源集合文件qrc 外部二进制资源 内编译资源 压缩 在程序中使用资源 在库中使用资源 更多参考 资源集合文件(.qrc) 与程序相关的资源在被指定在一个 .qrc 文件中,其基于 XML 的文件格式列出了磁盘上的文件,可…
下面对于QT的绘制系统做一个简要说明, 这个系统主要由三部分组成,  QPainter, QPaintDevice, QPaintEngine. QPainter 是一个绘制接口类,提供绘制各种面向用户的命令,而QPaintDevice 是一个QPainter绘制的目的地,相当于画布,   而QPaintEngine 是基本绘制命令的具体实现. 我们打交道比较多的是 QPainter , 注意对于Windows平台来说,当绘制目标是一个widget的时候,QPainter只能在 paintEve…
将要介绍的是:QT中自定义系统托盘(systemtray)的一个Demo,希望能帮需要的读者快速上手. 前提假设是诸位已经知道QT中的signals .slot以及资源文件,所以关于这些不会再累述. 我的QT版本如下: 整体的工程目录如下所示: 创建过程如下: 首先新建一个MainWindow工程,工程名为systemTray,会包含5个文件systemTray.pro.main.cpp.mainwindow.h.mainwindow.cpp和aminwindow.ui 这时运行程序会生成一个空…
没有linguist和lupdate等命令需要安装Linguist: 在Terminal中输入: sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer 其中: qt4-dev-tools 中包括了Qt Assistant,Qt Linguist,Qt Creator     qt4-doc 这个是帮助文档     qt4-qtconfig Qt的配置工具,这个装好默认好     qt4-dem…
注意: 1.是在res目录下面,新建文件夹 2.需要国际化的文本资源和图片资源名称是一样的 图片国际化 默认:drawable-xhdpi 中文简体:drawable-zh-rCN-xhdpi(或者不写) 韩文:drawable-ko-rKR-xhdpi 越南语:drawable-vi-rVN-xhdpi 繁体:drawable-zh-rTW-xhdpi         文本资源国际化     中文(中国):values-zh-rCN中文(台湾):values-zh-rTW中文(香港):valu…
概述查看Qt源码可知,Q_INVOKABLE是个空宏,目的在于让moc识别. 使用Q_INVOKABLE来修饰成员函数,目的在于被修饰的成员函数能够被元对象系统所唤起. Q_INVOKABLE与QMetaObject::invokeMethod均由元对象系统唤起.这一机制在Qt C++/QML混合编程,跨线程编程,Qt Service Framework 以及 Qt/ HTML5混合编程以及里广泛使用. QMetaObject::invokeMethod的声明如下,还有几个inline重载: s…
官方解释 我们在Qt源码中可以看到一个QObject的子类经常会用到一些Q_开头的宏,例如QMainWindow类开始部分代码是这样的: Q_PROPERTY(QSize iconSize READ iconSize WRITE setIconSize) Q_PROPERTY(Qt::ToolButtonStyle toolButtonStyle READ toolButtonStyle WRITE setToolButtonStyle) ......public: enum DockOptio…
CentOS6.7系统文本安装 [日期:2016-01-30] 来源:Linux社区  作者:endmoon [字体:大 中 小]   一.选择虚拟机软件 1)VMware Workstation  http://www.linuxidc.com/Linux/2015-08/122297.htm 2)Hyper-V 3)VirtualBox  http://www.linuxidc.com/Linux/2016-01/127892.htm 二.镜像文件 CentOS6.7 下载:http://w…
2015-03-02 更新文章,由于需求修改,更改了flexpaper插件,故增加第9.10.11小节,下载代码时请注意. 先废话几句.最近用到文档在线浏览功能,之前用的是print2flash(一个工具,文档直接转flash,自带翻页搜索等一系列功能),由于无法与js进行交互,所以改用flexpaper. 由于之前没接触过Flex,了解不多,所以文章难免有不合适的地方.希望各位给予指正. 首先感谢ajava.org的mark,一系列文章有很多的帮助,少走很多弯路. 开发工具:1.Adobe F…
简述 在做用户登录.修改密码的时候,往往会用到密码框,其中一些功能要求与普通的输入框不同,例如:不能选中.复制.粘贴.无右键菜单等功能,当然设置密码不可见是必须的! 下面介绍两种方式来实现相同的效果. 简述 效果 基础部分 事件过滤器 接口说明 实现方式 事件重写 源码下载 效果 基础部分 //设置无右键菜单 setContextMenuPolicy(Qt::NoContextMenu); //设置无输入时提示信息 setPlaceholderText(QStringLiteral("请输入密码…
简述 在做用户登录.修改密码的时候,往往会用到密码框,其中一些功能要求与普通的输入框不同,例如:不能选中.复制.粘贴.无右键菜单等功能,当然设置密码不可见是必须的! 下面介绍两种方式来实现相同的效果. 简述 效果 基础部分 事件过滤器 接口说明 实现方式 事件重写 源码下载 效果 基础部分 //设置无右键菜单 setContextMenuPolicy(Qt::NoContextMenu); //设置无输入时提示信息 setPlaceholderText(QStringLiteral("请输入密码…
在做用户登录.修改密码的时候,往往会用到密码框,其中一些功能要求与普通的输入框不同. 例如:不能选中.复制.粘贴.无右键菜单等功能,当然设置密码不可见是必须的! 一般的密码框:(默认 可以选中,复制,粘贴,有右键菜单) QLineEdit *pCommonLineEdit = new QLineEdit(this); pCommonLineEdit->setPlaceholderText(QStringLiteral("密码由字母.数字.下划线组成,长度8-16位"));//QS…
转载---> http://blog.sina.com.cn/s/blog_a6fb6cc90101artk.html 在做用户登录界面的时候,往往会用到密码框,则其中的一些功能也要求与普通的输入框不同,包括不能全选.复制.粘贴.无右键菜单等.设置密码不可见等功能! #include "pwd_line_edit.h" PwdLineEdit::PwdLineEdit(QWidget *parent) :  QLineEdit(parent) {  //设置无右键菜单  this…
@color 0A @title 添加系统右键菜单项 管理员取得所有权(^&W)(带盾牌) by wjshan0808 @echo off echo * >nul reg add HKCR\*\shell\runas /ve /d "管理员取得所有权(&W)" /f reg add HKCR\*\shell\runas /v Icon /t reg_expand_sz /d "%SystemRoot%\system32\user32.dll,6"…
@color 0A @title 系统右键菜单添加剪贴板清空项(隐藏DOS窗口) by wjshan0808 @echo off echo 请输入右键菜单名称 set /p name= ::创建本机APPDATA数据文件夹md=mkdir set dpath=%APPDATA%\%name% if exist %dpath% rd /s /q %dpath% if not exist %dpath% md %dpath% rem 创建%name%.vbs脚本文件 set fpath=%dpath…
使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class="caret"></span> 来指示按钮作为下拉菜单. 下面的实例演示了一个基本的简单的按钮下拉菜单: <!DOCTYPE html> <html> <head> <title>Bootstrap 实例 - 基本的按钮下拉菜单&…
修复sublime text系统右键菜单 安装完Sublime Text2后,拿掉电脑里面的备用硬盘,导致每次使用Open with Sublime Text2的时候,都会出错,打开注册表,找到 HKEY_CLASSES_ROOT\*\shell\Open  with Sublime Text2\command,将其中的值修改为 ST2所在目录即可,如图…