完整代码:https://github.com/KenGeng/BookManageSystemForDatabaseProject
宅了两天多的时间,一个人从零开始学Qt和c++,强行做出了一个图书管理系统
以下是效果图:
【没有审美QAQ】
具体的代码要等到这学期结束之后再上传了。。。
以下的内容主要总结一下自己踩到的坑和一点点经验,比较杂乱:
tip1: 初学者如果要赶due的话,一定要用Qt designer来画UI 一定要用Qt designer来画UI 一定要用Qt designer来画UI!我刚开始参考了网上另一份详细的用Qt和MySQL做图书管理系统的学长(姐)的代码,想直接用代码布局,但尝试了一下午之后,还是选择了用Qt designer,用代码布局虽然很爽,很直观,并且很锻炼能力,但第一是看效果不容易,第二是Qt的类实在太多了,即使主要的基类不算多,可要一个一个试的话,实在太费时间。Qt designer相对就高效了不少,直接拖控件,Qt后台自动生成代码,即使我这种脑子不太灵光的人,一个下午也能画出差不多能用的UI。不过也要承认,真的手写500+行代码来布局的话,对Qt的套路肯定会熟悉很多。
tip2:显示日期与时间:
具体可以参考这个:http://blog.csdn.net/zzk197/article/details/7498593
先在构造函数里定义:
timer = new QTimer();(timer是个指针)
connect(timer, SIGNAL(timeout()), this, SLOT(updateTime()));
timer->start(1000);
void Widget::updateTime(){
QDateTime current_date_time = QDateTime::currentDateTime();
QString current_date = current_date_time.toString("yyyy-MM-dd \nhh:mm:ss\n ddd");
QString text;
text = current_date+" ";
ui->dataText->setText(text);
}
tip3:Qt中int转换成QString
这是个巨坑。。。刚开始对Qt里的query不太熟悉,忽略了类型的转换,结果查询语句一直失败,真的怀疑人生。。。一个一个试了之后,发现是在这出了问题。在Qt里调用select