Qt学习笔记(3):鼠标键盘事件
21 Oct 2011
效果图:
MainWindow.h
01 #ifndef MAINWINDOW_H
02 #define MAINWINDOW_H
03
04 #include</span>
05 #include</span>
06 namespace Ui {
07 class MainWindow;
08 }
09
10 class MainWindow : public QMainWindow
11 {
12 Q_OBJECT
13
14 public:
15 explicit MainWindow(QWidget *parent = );
16 ~MainWindow();
17 void mouseMoveEvent(QMouseEvent *);
18 void keyPressEvent(QKeyEvent *);
19
20 private:
21 Ui::MainWindow *ui;
22 };
23
24 #endif // MAINWINDOW_H </div> MainWindow.cpp
02 #define MAINWINDOW_H
03
04 #include
05 #include
06 namespace Ui {
07 class MainWindow;
08 }
09
10 class MainWindow : public QMainWindow
11 {
12 Q_OBJECT
13
14 public:
15 explicit MainWindow(QWidget *parent = );
16 ~MainWindow();
17 void mouseMoveEvent(QMouseEvent *);
18 void keyPressEvent(QKeyEvent *);
19
20 private:
21 Ui::MainWindow *ui;
22 };
23
24 #endif // MAINWINDOW_H </div> MainWindow.cpp
01 #include “mainwindow.h”
02 #include “ui_mainwindow.h”
03
04 MainWindow::MainWindow(QWidget *parent) :
05 QMainWindow(parent),
06 ui(new Ui::MainWindow)
07 {
08 ui->setupUi(this);
09 ui->label->setText(tr(“Click A~~”));
10 ui->pushButton->setText(tr(“Click the mouse and move it ~”));
11 }
12
13 MainWindow::~MainWindow()
14 {
15 delete ui;
16 }
17 void MainWindow::mouseMoveEvent(QMouseEvent *m)
18 {
19 //这里的函数名和参数不能更改
20 QCursor Lazy_pic(QPixmap(“S:/event/jay.jpg”));
21 //为鼠标指针选择图片,注意这里如果用绝对路径,要用/而不能用\
22 //也可以将图片放到工程文件夹的debug文件夹下,这样用相对路径\就可以了。
23 QApplication::setOverrideCursor(Lazy_pic);
24 //将鼠标指针更改为自己设置的图片
25 int x=m->pos().x();
26 int y=m->pos().y();
27 // 获取鼠标现在的位置
28 ui->pushButton->setText(tr(“鼠标现在的坐标是(%1,%2),爽吧?”).arg(x).arg(y));
29 //将鼠标的位置坐标显示在按钮上
30 ui->pushButton->move(m->pos());
31 // 让按钮跟随鼠标移动
32 }
33 void MainWindow::keyPressEvent(QKeyEvent *k)
34 {
35 if(k->key()==Qt::Key_A)
36 //判断是否是A键按下
37 {
38 ui->label->setPixmap(QPixmap(“S:/event/jay.jpg”));
39 }
40 }
下载源码
转载请注明:[于哲的博客][1] » [Qt学习笔记(3):鼠标键盘事件][2]
[1]: http://lazynight.me
[2]: http://lazynight.me/583.html
02 #include “ui_mainwindow.h”
03
04 MainWindow::MainWindow(QWidget *parent) :
05 QMainWindow(parent),
06 ui(new Ui::MainWindow)
07 {
08 ui->setupUi(this);
09 ui->label->setText(tr(“Click A~~”));
10 ui->pushButton->setText(tr(“Click the mouse and move it ~”));
11 }
12
13 MainWindow::~MainWindow()
14 {
15 delete ui;
16 }
17 void MainWindow::mouseMoveEvent(QMouseEvent *m)
18 {
19 //这里的函数名和参数不能更改
20 QCursor Lazy_pic(QPixmap(“S:/event/jay.jpg”));
21 //为鼠标指针选择图片,注意这里如果用绝对路径,要用/而不能用\
22 //也可以将图片放到工程文件夹的debug文件夹下,这样用相对路径\就可以了。
23 QApplication::setOverrideCursor(Lazy_pic);
24 //将鼠标指针更改为自己设置的图片
25 int x=m->pos().x();
26 int y=m->pos().y();
27 // 获取鼠标现在的位置
28 ui->pushButton->setText(tr(“鼠标现在的坐标是(%1,%2),爽吧?”).arg(x).arg(y));
29 //将鼠标的位置坐标显示在按钮上
30 ui->pushButton->move(m->pos());
31 // 让按钮跟随鼠标移动
32 }
33 void MainWindow::keyPressEvent(QKeyEvent *k)
34 {
35 if(k->key()==Qt::Key_A)
36 //判断是否是A键按下
37 {
38 ui->label->setPixmap(QPixmap(“S:/event/jay.jpg”));
39 }
40 }