qt在FrameLessWindowHint状态下的拖动:
void ShapedClock::mousePressEvent(QMouseEvent *event) {
if (event->button() == Qt::LeftButton) {
dragPosition = event->globalPos() - frameGeometry().topLeft();
event->accept();
}
}
void ShapedClock::mouseMoveEvent(QMouseEvent *event) {
if (event->buttons() & Qt::LeftButton) {
move(event->globalPos() - dragPosition);
event->accept();
}
}
这是两个函数,第一个记录鼠标按下,第二个记录鼠标移动,accept返回true表示接收,不再传播,ignore会向上传播。
其中当报错invalid use of incomplete struct type QMouseEvent时,或者类似错误时,考虑头文件的引入,此时要引入#include <QtGui>
还有QPoint dragPosition; 这个dragPosition也至关重要,用于记录位置信息。
subverion操作:
其实在linux平台下跟在windows平台下差不多 操作上:都是
1、创建仓库:svnadmin create /root/frame_repos
2。设置权限:
svnserver.conf: anon-access=read
auth-access=write
password-db=passwd
zhangsan = lisi
3、svn import /root/framework01 svn://localhost/framework01就会在仓库中创建这个库,之后:
svn co svn://localhost/framework /root/framework就可以checkout下来版本,这个co下来的里面包含了隐藏文件.svn用qt creator打开这个工程文件就会在tools里面多了subversion的选项。commit是提交,update是从库存下载 最新版本。
-----------------------------------------貌似以后都不会用到subversion!--------------------------------------------------------