MFC\Qt
Kiopler
这个作者很懒,什么都没留下…
展开
-
mfcdll
mfcdll意思是用MFC类库来创建的dll库,可以看到可以创建一共有3种不同的dll第一种是常规的共享MFC DLL,这个意思是使用MFC类库时是动态链接库。这种方式产生的dll一般都比较小,但是会要求有对应的MFC环境才可以使用运行。还有一点就是这种类型dll中导出函数最上方必须加上一句AFX_MANAGE_STATE(AfxGetStaticModuleState());比如如下导出函数。第二种是静态链接到常规的MFC DLL,这种方式产生的dll一般都比较大,.原创 2022-03-16 12:52:35 · 1407 阅读 · 0 评论 -
CListCtrl如何获取选中项的下标
方法一: 单选的情况下GetNextItem(-1,LVIS_SELECTED);方法二:单选的情况下不知道你的CListCtrl是否允许多选,如果只允许单选,你只需要调用成员函数GetSelectionMark()就可以获取选中的行号,然后你再调用GetItemText()就可以获取选中行的文本。方法三: 可以多选的情况下CString str;POSITION pos=list.GetFirstSelectedItemPosition(); //pos选中的首行位置if..转载 2021-07-04 20:20:48 · 235 阅读 · 0 评论 -
QT解决UI设计器显示和运行显示不一致问题
if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)){ QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling,true);}原创 2021-03-10 22:53:50 · 1131 阅读 · 0 评论 -
Qt学习笔记[13]
为了学习QTimer, QDateTime和QTime 控件QTimeEdit, QDateEdit和他们的基类QDateTimeEdit等类的使用方法编写了如下小程序, 主要有几个功能计时器,可暂停 时间,日期或者两者的获取 以及其他一些不重要的试验功能界面如下:看一下代码:// dialog.h#ifndef DIALOG_H#define DIALOG_H#include <QDialog>#include <QTimer>#incl原创 2021-03-07 19:54:27 · 158 阅读 · 0 评论 -
初学者福利(≧∇≦)ノ Qt编写一个计算器
为了复习数据结构中的栈,用Qt编写了一个简易的计算器。界面如下:支持以下功能:基础的加减乘除运算 开平方根,求倒数,求平方 支持小数运算 判别表达式是否符合运算规则暂不支持负数运算。还会继续维护这个小项目,添加新功能。使用了如下技术:中缀表达式转后缀表达式 栈的运算利用代码写的非常简洁,没有多余"赘肉", 可能存在未知Bug,暂时没发现。其核心只有一个类QCalcCore。这里编写计算器的2个核心算法QString QCalcCore::InfixToP原创 2021-02-18 09:30:56 · 346 阅读 · 0 评论 -
Qt学习笔记[12]
首先看一下总结的思维导图:看一下元对象的使用:通过metaObject()获取元对象指针。 元对象通过调用className()获取对应类的类名字符串 元对象通过调用newInstance()获取对应类的新实例 inherits()方法可以测试类名是否为对象的类Q_CLASSINFO()方法设置名称与值的二元组可以通过QMetaClassInfo QMetaObject::classInfo(int index) const方法获取对象调用name()和value()来获原创 2021-02-11 20:13:40 · 503 阅读 · 0 评论 -
Qt学习笔记[11]
1. QStringListModelQStringListModel主要用于处理字符串序列,一般与QListView联用。setStringList(const QStringList &strs): 初始化QStringListModel setModel(): 把数据模型关联到视图组件上 setEditTriggers(): 设置视图组件是否可编辑(该方法不属于QStringListModel)removeRows: 删除多行rowCount(): 获取数据模型.原创 2020-12-31 14:17:59 · 1529 阅读 · 0 评论 -
Qt学习笔记[10]
1. Qt设计界面与运行不一致的解决办法插入如下代码: if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)) QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);在这个位置:2. QComboBox首先在UI界面上,可以双击ComboBox控件以添加默认拥有的项, 如下:ComboBox的主要方法如下:clear(): 清除ComboBox的所有原创 2020-12-29 13:19:25 · 2600 阅读 · 0 评论 -
Qt学习笔记[9]
1. QListView原创 2020-12-27 11:29:20 · 165 阅读 · 0 评论 -
Qt学习笔记[8]
1. QListWidgetclear(): 清除所有list项setFlags(): 设置每一项的属性addItem(): 在list末尾添加一项setIcon(): 设置图标setCheckState(): 设置是否被check, 前提是flag()内有Qt::ItemIsUserCheckable属性CheckState(): check状态currentRow(): 返回当前选中item索引insertItem(): 在currentRow()位置插入一项aI原创 2020-12-20 18:02:41 · 1467 阅读 · 1 评论 -
Qt学习笔记[7]
1. 关于pro文件的用法Qt中导入win库的时候 不能使用#pragmacomment(lib,...) 这是MSVC专有的表达式在mingw中需要在Qt的pro文件中加入LIBS+=-lxxx比如:msvc中:#include <Shlwapi.h>#pragma comment(lib, "shlwapi")minGw:pro文件添加:LIBS += -lshlwapi添加头文件:#include <Shlwapi.h&g...原创 2020-12-20 18:02:27 · 478 阅读 · 0 评论 -
Qt学习笔记[6]
1. 关于Qt生成可执行文件后打包作为产品的问题当用Qt写完一个软件后希望给别人用,但Qt有很多地方都要依赖自身的DLL, 下面的方法可以进行顺利打包:生成可执行文件后,在可执行文件目录下执行windeployqt *.exe命令,该Qt自带的工具就会帮助我们把该可执行文件需要的Qt内的dll打包起来(个人的资源比如图片音频不算在里面!)打包完就和如上一样,只要将其放到一个目录下即可2. 关于缺少libgcc_s_dw2-1.dll动态库错误导致该错误的原因是Mingw环境没原创 2020-12-17 21:51:25 · 239 阅读 · 0 评论 -
Qt学习笔记[5]
1. QFile文件类QFile构造: QFile objname(path) 打开文件: objname.open(QFileDevice::ReadOnly | QFileDevice::Append); // QIODevice则代表的是所有IO设备 读取所有: objname.readAll() 按行读取: objname.readLine() 返回一个QByteArray数组 判断是否到末尾: objname.atEnd() 写入: objname.write(xxx) 关闭文原创 2020-10-16 21:51:45 · 186 阅读 · 0 评论 -
Qt学习笔记[4]
画图部分原创 2020-10-15 20:17:04 · 174 阅读 · 1 评论 -
Qt学习笔记[3]
1. 自定义控件创建的具体步骤:创建Qt->设计师界面类 拖拽一个新的widget 右键选择提升为 填入设计师界面创建的自定义控件类 全局包含复选框 点击提升QSpinBox与QSlider都有valueChanged信号与setValue槽函数2. 事件鼠标进入事件[virtual protected] void QWidget::enterEvent(QEvent *event)鼠标离开事件[virtual protected] void QWidget原创 2020-10-11 10:25:23 · 178 阅读 · 0 评论 -
Qt学习笔记[2]
为了支持C++11新特性需要在.pro文件中加入CONFIG += c++111. 菜单栏与工具栏菜单栏只能有一个 menuBar()返回一个QMenuBar *bar; 将bar放入到窗口中 this->setMenuBar(bar) 添加菜单项bar->addMenu("xxx"), 返回QMenu地址 添加菜单项下拉列表qMenu->addAction("xxx"), 返回QAction地址 分割线addSeparator()工具栏可以有多个 ...原创 2020-10-02 19:19:21 · 209 阅读 · 0 评论 -
Qt学习笔记[1]
1. QtCreator常用快捷键Ctrl + R 运行 Ctrl + B 编译 Ctrl + F 查找 F1 帮助文档 ctrl+滚轮 自体缩放 ctrl+i 自动对齐 ctrl+shift+方向键 整行移动 F4 同名之间.h与.cpp之间切换 ctrl+/ 注释的快捷键2. 基本结构解析pro文件TARGET 生成exe程序名称 TEMPLATE app 应用程序模板 SOURCE HEADER 源文件以及头文件 QT += 模块名 wdiget模块要4.0以上..原创 2020-10-01 23:19:05 · 285 阅读 · 0 评论