- 博客(33)
- 资源 (3)
- 收藏
- 关注
原创 设计模式——行为型
应用:多个对象依赖于一个对象时,能有效保证解耦;特点:建立一种一对多的关系,一个对象发生变化其余对象都能知道并更新(JDK内置);角色:Observable——抽象主题,被观察角色(JDK内置)ConcreteObservable——具体主题,具体被观察角色,存入具体观察者,当发生变化时通知各观察者Observer——抽象观察者(JDK内置,内置为接口);ConcreteObservable——具体观察者;
2023-08-22 20:55:45 484 3
原创 一些编程/计算机中的基本知识
PackageManager,包管理器,用于管理应用程序的安装、卸载、查询和更多相关操作。pm list packages//设备上已安装的应用程序pm dump …//获取应用程序的详细信息,如包名、版本号、权限等:Activity Manager,活动管理器,用于管理设备上的活动和应用程序的状态。
2023-08-18 16:45:08 726
原创 设计模式——创建型
单例模式主要用于某个类有且只能用一个对象的场景,单例模式下不能外部实例化对象,由类内部自行私有化实例对象并提供一个可以获得该对象的方法。
2023-08-15 20:52:20 645
原创 Kotlin 函数
this:run、 with、 apply,通过关键字this引用上下文对象,在它们的 lambda 表达式中可以像在普通的类函数中一样访问上下文对象,大多数场景下当访问接收者对象时可以省略this。it:let、also,将上下文对象作为lambda的参数,默认名称为it,当调用对象函数或属性时不能想this一样隐式访问对象。apply、 also返回上下文对象let、 run、 with返回lambda表达式结果。
2023-06-26 20:46:01 697
原创 Android Stduio里编译打包C语言文件
三、将c中的监听器回调结果传递处理定义一个listener和一个setListener函数ENV = env;//Listener中的方法和参数 callback(c_listener);//c中的监听器设置函数 } listener_t c_listener(int param) {
2023-05-23 20:18:09 256
原创 Koin入门使用
single创建的对象在整个容器的生命周期内存在,任意地方注入都是同一个实例。factory每次创建新的实例,不被保存、不被共享。1.创建Koin容器。2.创建Koin模块。
2023-04-25 20:55:25 436 2
原创 git简单使用
git reset 是把HEAD向后移动了一下,而git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。git reset --hard HEAD//撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交。不局限于一个分支,可夸分支操作。将远程主机的某个分支的更新取回,并与本地指定的分支合并,完整格式可表示为:git pull :
2023-04-17 14:08:16 240
原创 C中的一点小东西
extern只起申明作用,不定义,extern的变量或函数的定义在其他文件中。extern的函数或变量在头文件中被引用了,只会被编译一次。代码区:编译后的程序指令,CPU可直接执行的机器码。.h中extern的变量或函数定义可以不在对应的.c文件中,但该对应的.c文件中也可以使用。函数指针:void (*fun)(parm);空类型指针可以转为其他类型的指针,其他类型的指针也可转为空类型的指针。.h中声明的变量或函数定义需要在对应的.c文件中。
2023-04-13 20:28:44 538
原创 Android多设备多module打包(fat-aar)
当一个工程项目中存在多个module时,可使用fat-aar将多个module打包成一个aar;
2023-03-21 17:49:49 2385 2
原创 Qt里切割图片资源作为单个控件元素使用
Qt里切割图片资源作为单个控件元素使用利用象棋盘和象棋为例如上图需要知道棋子大小以及棋盘每个点的位置1.获取棋子大小构造函数里设置 m_ItemsImage = QPixmap(":/new/items.png");//棋子图片 m_nItemWidth = m_ItemsImage.width() / COLOR_MAX;//62 m_nItemHeight = m_ItemsImage.height() / ITEM_MAX;//62 //其中COLOR_MA
2020-08-22 21:34:22 391
原创 Qt中的鼠标与键盘事件
Qt中的鼠标与键盘事件1.鼠标事件1.1 左键重写虚函数void mousePressEvent(QMouseEvent *event);void MainWindow::mousePressEvent(QMouseEvent *event){ if(event->button()==Qt::LeftButton) { qDebug()<<"单击左键"; } else { qDebug()<<"单
2020-08-22 20:27:14 673
原创 Qt中创建使用菜单栏、工具栏、状态栏
Qt中创建使用菜单栏、工具栏、状态栏1.菜单栏软件(如QT)中“文件”、“编辑” 这一栏称为菜单栏。主要使用QMenuBar、QMenu、QAction类创建菜单栏及相关选项。//.h里定义 QMenuBar *menu; QMenu *menu1; QMenu *menu2; QMenu *menu3; QAction *action1; QAction *action2; QAction *action3; QStatusBar *s
2020-07-28 08:46:15 6947 4
原创 QT中使用MySQL数据库
QT中使用MySQL数据库1.连结MySQL首先正确安装MySQL数据库。然后将libmysql.lib文件放在QT安装路径下的对应编译器的lib文件夹下,如F:\software\QT5.9.5\5.9.5\mingw53_32\lib。将libmysql.dll文件放在QT安装路径对应编译器的bin文件夹下。最后可正常连结使用数据库。 ui->setupUi(this); QSqlQuery query; mutex.lock();//互斥锁,可以不用 QS
2020-07-20 22:38:12 2032
原创 QT发布应用程序
QT发布应用程序1.打开QT编译器的命令框根据不同编译器选择不同的命令框2.输入cd/d exe所在路径建议将exe文件单独放置到一个文件夹,因为发布后的所有文件会在一起,如果用原来的文件夹会和原来的文件混在一起。3.windeployqt 文件程序名.exe4.最后结果发布成功的文件夹,将这个文件夹拷贝到其他电脑上一般都能正常打开应用程序exe...
2020-07-20 21:03:01 205
原创 Python基本数据结构简介——列表、元组、字典、集合
Python基本数据结构简介—列表、元组、字典、集合1.列表可变可重复的有序序列,符号标记:[ ]。一个列表中可同时存放多种类型的数据1.1 定义赋值运算直接创建:listName = [1,8,a,‘hello’,‘数据’,3.125]赋值创建空列表:listName = [ ]创建数值列表:listName = list(range(10,20,2)) #创建一个10-20之间所有偶数的列表列表推导使生成:listName = [ int(x*0.5) for x in price]#p
2020-05-23 18:37:42 456
原创 Qt中创建饼状图
Qt中创建饼状图1.必要设置.pro文件QT += charts头文件#include <QtCharts>QT_CHARTS_USE_NAMESPACEnamespace Ui {class MainWindow;}2.初始化设置void MainWindow::initPiewData(){ QChart *chart = new QChart();//创建图表 chart->setTitle("PiewChart演示");//图表标题
2020-05-22 23:24:00 1786 1
原创 Qt中创建柱状图
Qt中创建柱状图1.必要设置.pro文件QT += charts头文件#include <QtCharts>QT_CHARTS_USE_NAMESPACEnamespace Ui {class MainWindow;}2.设置数据存储数据到QTableView中void MainWindow::iniData(){ QStringList headerList; headerList<<"姓名"<<"语文"<<"数
2020-05-22 21:53:47 4741
原创 Qt中绘制折线
Qt中绘制折线基本流程三要素:场景、图表、序列创建场景—创建图表—图表添加到场景—创建序列—序列添加到图表创建坐标轴并设置—坐标轴添加到图表—序列、坐标轴、图表配合序列设值1.必要配置.pro文件QT += charts头文件#include <QtCharts>QT_CHARTS_USE_NAMESPACEnamespace Ui {class MainWindow;}2.创建图表有些类的对象是全局定义,如series,axisX,axisY//创建Char
2020-05-22 21:24:59 628
转载 Qt中创建多线程TCP服务器
Qt中创建多线程TCP服务器参考该篇博客流程主程序类:建立服务器、监听(需要用到server类对象)server类:重写incomingConnection()函数——获取连接号,开启新线程(需要用到thread类对象)thread类:根据传递的连接号创建新的socket对象(需要用到socket类)socket类:做一些tcp状态的判断,数据的发送,接收。...
2020-05-22 15:11:18 969
原创 Qt中创建TCP服务端
Qt中创建TCP服务端1. .pro文件必修在.pro文件中添加如下一句QT += network头文件#include <QtNetwork/QTcpServer>#include <QtNetwork/QTcpSocket>#include <QtNetwork/QHostAddress>2.建立服务端、监听 QTcpServer *tcpServer; QTcpSocket *tcpSocket; tcpServer = ne
2020-05-22 14:44:30 1237
原创 Qt中创建TCP客户端
Qt中创建TCP客户端1. .pro文件必修在.pro文件中添加如下一句QT += network在头文件包含以下内容#include <QtNetwork/QTcpSocket>#include <QtNetwork/QHostAddress>#include "qhostinfo.h"private:QTcpSocket * socket;2.建立客户端socket = new QTcpSocket(this);3.连接服务器 socket-&g
2020-05-22 14:15:34 1216
原创 Qt中QTableview的使用方法
Qt中QTableview的使用方法数据模型类为QStandardItemModel插入的数据类型为QStandardItem可定全局变量数据模型类和插入的数据类型 QItemSelectionModel *theSelection QStandardItemModel *theModel; QStandardItem *Item;1.确定行列数QWidget *window = new QWidget;theModel = new QStandardItemModel(
2020-05-22 13:29:29 1868
原创 Qt中多页面的创建——TabWidget,QStackedWidget
Qt中多页面的创建——TabWidget,QStackedWidgetQStackedWidget类创建多页面无页面目录,可结合QTreeWidget和QTreeWidgetItem设置目录,QTabWidget创建的多页面自动有目录,不过目录在上方。1.QtabWidget创建多页面 QFormTable *formtable = new QFormTable(this); formtable->setAttribute(Qt::WA_DeleteOnClose);//用过删除
2020-05-22 12:05:15 5852
原创 Qt中的一些数据类型、进制转换
Qt中的一些数据类型、进制转换1.简单的类型、进制转换读取数据类型为十进制情况 QString str = ui->Dec->text(); //读取Dec数据 int val = str.toInt(); //缺省将字符串转换为十进制int型 str = str.setNum(val,16); //转换为十六进制 str = str.toUpper(); //十六进制字母大
2020-05-22 11:27:24 1111
原创 Qt中创建模态与非模态对话框
Qt中创建模态与非模态对话框1.模态对话框模态对话框关闭时不会释放内存,必须在关闭主程序时才会释放内存;模态对话框创建完成后必须完成相应操作(yes/cancel)才能进行其他操作。 Page1 *page = new Page1(this); page->exec();2.非模态对话框就非模态对话框关闭时不会释放内存,必须在关闭主程序时才会释放内存;非模态对话框创建完成后未完成相应操作(yes/cancel)也可进行其他操作。 page2 *page = new
2020-05-22 08:35:07 522
原创 Qt中的颜色设置——Qpalette,Qcolor,Qbrush等
Qt中的颜色设置——Qpalette,Qcolor,Qbrush等一些知识简介QPalete::Window——通常指窗口部件的背景色;QPalette:WindowText——通常指窗口不见的前景色;QPalette::Base——底色;QPalette::Button——指按钮窗口部件的背景色;QPalette::ButtonText——指按钮窗口部件的前景色;QPalette::Text——文本输入窗口的前景色QPalette::Background——背景色QPalette::Fo
2020-05-21 22:40:01 19520 2
原创 Qt中QFont类的几种常见使用方法
Qt中QFont类的几种常见使用方法1.纯代码设置字体格式设置 QFont font = ui->txtEdit->font();//获取控件的font font.setUnderline(true);//下划线操作 ui->txtEdit->setFont(font);//设置 //常见其他操作如:setBold(bool)加粗 setItalic(bool)斜体 setOverline(bool)上划线 setStrikeOut(bool
2020-05-18 22:21:30 18714 3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人