• 12205阅读
  • 6回复

QT4应用程序中怎样用设置系统时间 [复制链接]

上一主题 下一主题
离线磐石
 
只看楼主 倒序阅读 楼主  发表于: 2009-11-25
QT4应用程序中怎样用设置系统时间?
谢谢
不怕做不到,只怕想不到
离线yb824
只看该作者 1楼 发表于: 2009-11-25
离线磐石
只看该作者 2楼 发表于: 2009-11-25
引用第1楼yb824于2009-11-25 10:44发表的  :
http://blog.csdn.net/lanmanck/category/560042.aspx

恩,谢谢,这样能修改,但有一个问题是:
我的一个简单的应用程序(时钟),是在2440板子里运行的,首先是读取系统时间并显示,这容易做到,但修改时间就有问题了,按照以上方法修改时,当这个(如下)程序段一运行时,整个应用程序就死在那里了,但通过控制台能看到系统时间是被修改的。
请大哥再指点一下。非常感谢!

运行以下程序段时,在控制台还有如下信息:
QProcess: Destroyed while process is still running.

qt带的类只能读取,要修改系统的还需要date和hwclock:
QProcess changedt,syncit;

QStringList cmdlist;
cmdlist<<"-s" << m_ui->dateTimeEdit->dateTime().toString("yyyy-MM-dd hh:mm:ss");
changedt.start("date",cmdlist);
cmdlist.clear();
cmdlist<<"-w";
syncit.start("hwclock",cmdlist);
changedt.waitForFinished(2000);
syncit.waitForFinished(2000);



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lanmanck/archive/2009/09/15/4556326.aspx
不怕做不到,只怕想不到
离线yb824
只看该作者 3楼 发表于: 2009-11-25
waitForFinished()要阻塞,不要这个呢??
离线磐石
只看该作者 4楼 发表于: 2009-11-25
引用第3楼yb824于2009-11-25 13:41发表的  :
waitForFinished()要阻塞,不要这个呢??

恩,我也试了用这个和不用这个,界面冻结确实是这个函数引起的,但是不用这个,虽然界面不会冻结了,但系统时间没有改变。
当我每次都重新运行整个应用时,按上面方法(有waitForFinished())当第一次做调整时间,一般没问题,系统时间能调,界面不会冻结,但第二次再调时,界面会冻结在那里,有时等几十秒后,就行了,有时等很久或是死了
不怕做不到,只怕想不到
离线磐石
只看该作者 5楼 发表于: 2009-11-26
还有一个奇妙的地方是,当我设置的时间比此时显示的时间大时,就不会出现界面冻结,如里比显示时间小,就会冻结,我都无语了,这到底是怎么一回事,控制台查看时,时间是被改过来的,有谁碰到过此类问题的,请解释一下吧,呵呵,谢谢
不怕做不到,只怕想不到
离线mrcalifor
只看该作者 6楼 发表于: 2012-06-09
楼主现在问题解决了吗?我毕设也有这相关的内容 ,不知道楼主能否指导一下?

快速回复
限100 字节
 
上一个 下一个