qt入门精讲教程 学习2

项目: 学生管理系统 第19课

1. 事件驱动  为需要处理的事件编写相应的事件处理程序。 比如按钮事件

2. mesgBox 的使用

3 QlineEdit 的使用

3.1 想要密码方式显示(小黑点)  : echoMode ->password 模式

alignment :文字对齐方式    clearButtonEnable : lineEdit 出现一个小按钮,点击一下就立刻清除了edit的内容。

placeholderText(占位) :灰色提示语。

信号: textFinished  :表示当光标移动开这个 edit 的时候 就会触发这个信号  returnPressed :按下回车键

可以利用textChaged 当输入不是6位则把输入框显示为红色,当是6位则显示正常的颜色

4. comBox的使用:

双击combox 就可以弹出编辑组合框。然后在里面 点击对话框下面的加号 输入文字项  回车既可。

comBox 你可以从几组已知的数据里面选择一组数据用来作为输入。

属性->QcomBox->editable   启用,那么你不仅可以从预设的数据里面选择,也支持自定义输入数据,并且他默认会把你输入的数据也记录下来。

改变当前显示的那项:currentText  

当前显示的那项 可以作为提示: “请输入学号 :”

5. RadioButton  是单选按钮。也就是一组RadioButton  按钮里面有且只有一个按钮会被选中。比如性别 属性

6. 文件操作  QFile  QTextStream 文件操作转为流式操作 返回的就是QString 方便文件操作和QSring处理

#include <QFile>   #include <QTextStream>

7. checkBox 多选框(复选框)比如:兴趣爱好

8. 子菜单的显示:  action_about w;  w.show()  或者 w.exec() 这是一个死循环这种情况下主窗口就被阻塞了 ,无法操作,不能采用这种。 this->a.show()

9. item view (model based) 和 item widgget(item based)  效果一样,但是使用方法不同 一个是基于数学模型的视图  一个基于条目的组件。 一个是视图 一个是组件。 tab_view  tab_widget

10 添加学生界面 

  上面的表格窗口 采用tabView来实现。

  tabview 的使用:典型的 mvc 模式  控制和 view分离。需要构建一个model .model负责表格的结构,每一行 显示什么,每一列显示什么。外观 颜色 字体 大小等由view设置。 view 和model绑定。 显示内容:有model来构造。你只需要区分是属于内容还是属于外观。

我们实际使用的是QStandardItemModel Class  qt的 标准条目类型。

class QueryStu:public QDialog
{     
  Q_OBJECT
public:   
  QueryStu();   
  explict QueryStu(widget *parent=0);  
  ~QueryStu();    
  void disp(int raw/*第几行*/,QString subs/*字符串集合 第几列由subs确定*/,)
private:    
  UI ::QueryStu *ui;   
  QList<QString> stu_lines;    
  QStandardItemModel *model;
};
#include "querystu.h"
QueryStu::QueryStu(QWidget *parent):QDialog(parent),ui(new UI::QueryStu)
{   
this->model = new QStandItemModel;    
//设置表头    
this->model->setHorizontalHeaderItem(0,new QStandItem("姓名"));   第0列    
this->model->setHorizontalHeaderItem(0,new QStandItem("学号"));   第1列    
//绑定视图    
this->ui->tabView->setModel(model);  //这里只需要将model设置进去了就可以了。}

QueryStu::~QueryStu()
{
delete ui;
}
void disp(int raw/*第几行*/,QString subs/*字符串集合 第几列由subs确定*/)
{
  int i=0;
  for (i=0;i<subs.length,i++)
  this->model->setItem(raw,i,new QStandardItem(subs.at(i)));  //行,列,QStandardItem 
  //subs 表示 这些格子或者字符的集合。
}
项目: 学生管理系统  秒表项目 打地鼠项目

打地鼠有些主窗口界面  采用graphicsView 然后设置为整个垂直布局 

知识点 :事件重写。 打地鼠游戏 留待以后有兴趣再学吧。

 

QT 学习资料https://blog.csdn.net/salmonwilliam/article/details/85566311

qt 分享https://bbs.csdn.net/topics/390932467

https://bbs.csdn.net/topics/390314521

https://download.csdn.net/download/weixin_42078760/10499227

https://blog.csdn.net/dpsying/article/details/80615320

https://blog.csdn.net/luoyouren/article/details/52473265

https://download.csdn.net/download/logttt/10773690

https://blog.csdn.net/MINGTING1323/article/details/80590379

https://blog.csdn.net/pan869823184/article/details/7360041

https://blog.csdn.net/qq_34384524/article/details/73195836

https://blog.csdn.net/qq214517703/article/details/52619368

https://blog.csdn.net/weixin_43324701/article/details/82979054

https://bbs.csdn.net/topics/390537825

https://download.csdn.net/download/parkchorong/10608717

https://blog.csdn.net/m0_38059843/article/details/78257664

https://blog.csdn.net/qq_37967635/article/details/85088704

https://bbs.csdn.net/topics/390445133

https://blog.csdn.net/gaoyu1253401563/article/details/81059847

https://blog.csdn.net/gaoyu1253401563/article/details/81059847

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值