• 8037阅读
  • 22回复

求教高人,Qt颜色对话框的问题? [复制链接]

上一主题 下一主题
离线twfx1027
 

只看楼主 倒序阅读 楼主  发表于: 2013-05-22
— 本帖被 dbzhang800 从 Qt基础编程 移动到本区(2013-05-22) —
关键词: QT4
   QColorDialog *color = new QColorDialog;
   color->setModal(true);
   if(color->exec() != QDialog::Accepted)
    return;
   QPalette pal = this->palette();
   QColor _color = color->currentColor();
   pal.setColor(QPalette::Window,_color);
   this->setStyleSheet(QString("background-color:%1").arg(_color.name()));
用上面的代码在调出的颜色对话框是这样的,怎么把里面的英文改为中文?谢谢
离线hehuim

只看该作者 1楼 发表于: 2013-05-22
http://lgb168.blog.163.com/blog/static/49674438201276113931989/
重点是//加载Qt自带的控件汉化文件
离线dbzhang800

只看该作者 2楼 发表于: 2013-05-22
看本版置顶帖
离线twfx1027

只看该作者 3楼 发表于: 2013-05-22
引用第1楼hehuim于2013-05-22 15:00发表的  :
http://lgb168.blog.163.com/blog/static/49674438201276113931989/
重点是//加载Qt自带的控件汉化文件



调出的是系统QColorDialog,  不应该是向改button的命名为汉语把!要是改一个button的名字为中文加QTextCodec::setCodecForTr(QTextCodec::codecForName("system"));  就行了。这是调色板里面的貌似不行兄弟、、、、
离线twfx1027

只看该作者 4楼 发表于: 2013-05-22
引用第2楼dbzhang800于2013-05-22 15:22发表的  :
看本版置顶帖


里面貌似都是修改类型button名字为中文的兄弟,直接加QTextCodec::setCodecForTr(QTextCodec::codecForName("system"));
就行了。这是修改dialog里面的字体。不知道该怎么做啊?先谢谢兄弟了
离线dbzhang800

只看该作者 5楼 发表于: 2013-05-22
首先: QTextCodec::setCodecForTr(QTextCodec::codecForName("system")); 这一行代码本身存在两个问题。而且它和你的问题无关

其次:置顶帖中有你要的答案
离线twfx1027

只看该作者 6楼 发表于: 2013-05-22
引用第5楼dbzhang800于2013-05-22 15:37发表的  :
首先: QTextCodec::setCodecForTr(QTextCodec::codecForName("system")); 这一行代码本身存在两个问题。而且它和你的问题无关
其次:置顶帖中有你要的答案

版主  哪个置顶帖啊?找不到啊,  能给个链接不?谢谢版主了
离线dbzhang800

只看该作者 7楼 发表于: 2013-05-22
置顶帖:http://www.qtcn.org/bbs/read-htm-tid-54151.html

其实前面网友给出的链接中后半部分也给出了答案,只不过你只盯着前半部分看了,而前半部分碰巧还是有问题的。
离线twfx1027

只看该作者 8楼 发表于: 2013-05-22
引用第7楼dbzhang800于2013-05-22 15:52发表的  :
置顶帖:http://www.qtcn.org/bbs/read-htm-tid-54151.html
其实前面网友给出的链接中后半部分也给出了答案,只不过你只盯着前半部分看了,而前半部分碰巧还是有问题的。


哦   谢谢版主了
离线twfx1027

只看该作者 9楼 发表于: 2013-05-22
引用第8楼twfx1027于2013-05-22 15:55发表的  :
哦   谢谢版主了


版主 我只要在main函数里面加入你这几句话就行了吗?   画圈的YourDirPath是我程序的目录还是qt的安装目录?C:\Qt\4.8.4\translations这是我qt的安装目录,放到画圈的地方有错误。。。。偶是新手  谢谢版主的耐心回答。
离线hehuim

只看该作者 10楼 发表于: 2013-05-22
引用第9楼twfx1027于2013-05-22 16:28发表的  :
[图片]
版主 我只要在main函数里面加入你这几句话就行了吗?   画圈的YourDirPath是我程序的目录还是qt的安装目录?C:\Qt\4.8.4\translations这是我qt的安装目录,放到画圈的地方有错误。。。。偶是新手  谢谢版主的耐心回答。[图片]

你直接把那个qm文件拷到你的目录不就行了啊,反正你以后发布的时候也是要带的。
还有就是我是让你看//加载Qt自带的控件汉化文件,下面的,你偏偏要看上面的那个设置编码的。

离线twfx1027

只看该作者 11楼 发表于: 2013-05-22
引用第10楼hehuim于2013-05-22 16:35发表的  :
你直接把那个qm文件拷到你的目录不就行了啊,反正你以后发布的时候也是要带的。
还有就是我是让你看//加载Qt自带的控件汉化文件,下面的,你偏偏要看上面的那个设置编码的。


我是在vs2010下qt里面编译的,我找到了qm文件考到目录下为什么不行啊兄弟?
离线twfx1027

只看该作者 12楼 发表于: 2013-05-22
引用第9楼twfx1027于2013-05-22 16:28发表的  :
[图片]
版主 我只要在main函数里面加入你这几句话就行了吗?   画圈的YourDirPath是我程序的目录还是qt的安装目录?C:\Qt\4.8.4\translations这是我qt的安装目录,放到画圈的地方有错误。。。。偶是新手  谢谢版主的耐心回答。[图片]


版主  在线等你  版主  谢谢版主
离线hehuim

只看该作者 13楼 发表于: 2013-05-22
回 11楼(twfx1027) 的帖子
路径设置了没啊!就在当前目录下了!
QTranslator translator;
translator.load("qt_zh_CN",".");   //加载Qt 自身Widget的翻译文件
a.installTranslator(&translator);
当前目录路径就是个点。VS下也应该是差不多吧!
离线dbzhang800

只看该作者 14楼 发表于: 2013-05-22
首先:你先确认使用绝对路径能不能工作。(前面出错你没加引号)

其次:使用相对路径一定要小心。应用程序所在路径 和 当前目录 并不一定一致。参考
http://blog.csdn.net/dbzhang800/article/details/6363165
离线twfx1027

只看该作者 15楼 发表于: 2013-05-22
引用第14楼dbzhang800于2013-05-22 16:59发表的  :
首先:你先确认使用绝对路径能不能工作。(前面出错你没加引号)
其次:使用相对路径一定要小心。应用程序所在路径 和 当前目录 并不一定一致。参考
http://blog.csdn.net/dbzhang800/article/details/6363165


就是目录的地方显示有红色下滑波浪线,还有那个提示。不知道为为什么啊版主?
离线twfx1027

只看该作者 16楼 发表于: 2013-05-22
Re:回 11楼(twfx1027) 的帖子
引用第13楼hehuim于2013-05-22 16:56发表的 回 11楼(twfx1027) 的帖子 :
路径设置了没啊!就在当前目录下了!
QTranslator translator;
translator.load("qt_zh_CN",".");   //加载Qt 自身Widget的翻译文件
a.installTranslator(&translator);
当前目录路径就是个点。VS下也应该是差不多吧!


我也是这样做的兄弟,在9楼,那个目录有提示错误,不知道为什么啊兄弟?
离线dbzhang800

只看该作者 17楼 发表于: 2013-05-22
引用第14楼dbzhang800于2013-05-22 16:59发表的  :
首先:你先确认使用绝对路径能不能工作。(前面出错你没加引号)
其次:使用相对路径一定要小心。应用程序所在路径 和 当前目录 并不一定一致。参考
http://blog.csdn.net/dbzhang800/article/details/6363165

用相对目录你知道 ".",绝对目录怎么不加了引号了呢?
离线twfx1027

只看该作者 18楼 发表于: 2013-05-22
引用第17楼dbzhang800于2013-05-22 17:08发表的  :
用相对目录你知道 ".",绝对目录怎么不加了引号了呢?


哦    太马虎了   谢谢版主了  可以了   谢谢各位兄弟的回答
离线kimtaikee

只看该作者 19楼 发表于: 2013-05-22
题外话,你这样new 完了没有delete掉会memory leak的,要不就delete 掉,要不就用scoped_pointer

离线twfx1027

只看该作者 20楼 发表于: 2013-05-22
引用第19楼kimtaikee于2013-05-22 18:07发表的  :
题外话,你这样new 完了没有delete掉会memory leak的,要不就delete 掉,要不就用scoped_pointer


怎么delete掉兄弟?能写下代码吗?谢谢~
离线twfx1027

只看该作者 21楼 发表于: 2013-05-22
引用第17楼dbzhang800于2013-05-22 17:08发表的  :
用相对目录你知道 ".",绝对目录怎么不加了引号了呢?

版主,qpushbutton默认是什么颜色?谢谢
离线twfx1027

只看该作者 22楼 发表于: 2013-05-22
引用第14楼dbzhang800于2013-05-22 16:59发表的  :
首先:你先确认使用绝对路径能不能工作。(前面出错你没加引号)
其次:使用相对路径一定要小心。应用程序所在路径 和 当前目录 并不一定一致。参考
http://blog.csdn.net/dbzhang800/article/details/6363165
版主版主,Qt颜色对话框的大小如何设置?谢谢
快速回复
限100 字节
 
上一个 下一个