- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 QT,安装完毕之后,重新添加组件的方法
下边指令前边那个路径就是你安装Qt的路径,也就是通过cmd进入qt安装的目录下,打开MaintenanceTool.exe的同时为其切换源。注意一定要用命令行打开,这样才能切换源,要不会拉取失败,只显示已安装的组件,没有其他组件可以勾。注意:安装完毕之后,如果发现有些组件漏了没勾,执行以下命令可以重新勾选。
2023-12-15 13:50:12
1418
转载 C++ 输出 类似excel列头的编号 A ,B,C,...,Z AA,AB,..,AZ ...
生成类似 excel 版本号 A ,B,C,...,Z AA,AB,..,AZ ... 最近遇到一个需求:每次对一条记录进行修改或指定操作,需要生成一个历史版本,版本号需要采用类似excel表格的列号的形式,第一版本为A,第二版本为B,以此类推由A-Z,AA,AB,AC,...,AZ,ZZ,AAA-ZZZ。由于考虑到后面有根据版本号排序,根据版本号范围查询数据的需求,思考了一下,采用了数据库的版本号字段存的是数字1,2,3,4 ....分别对应A,,B,C,D ....,52对应AZ,这样的一个对应.
2020-10-13 22:25:43
1637
转载 MFC进度条重绘 (CProgressCtrl)
MFC进度条(CProgressCtrl) 重绘先看一张图:新建一个 继承自 CProgressCtrl 的类,然后添加 OnPaint 消息处理函数,此函数代码如下:void CNewProgress::OnPaint(){ CPaintDC dc(this); CBrush BackgroundBrush; BackgroundBrush.CreateSolidBrush(RGB(255,0,0)); CBrush ForeB
2020-09-23 20:41:17
793
转载 2020-09-22
问题描述 原先在项目中使用了Unicode字符集,后来由于某些原因想改为使用多字节字符集,但更改多字节字符集后发现界面上的按钮风格发生了变化。解决方法 如果该项目是利用MFC应用程序向导创建的,可以在向导自动生成的stdafx.h文件(vs2019 framework.h)中看到如下代码。#ifdef _UNICODE#if defined _M_IX86#pragma comment(linker,"/manifestdependency:\"type='win32' na.
2020-09-22 22:37:34
180
原创 MFC GDI+ 初始化类
首先创建一个基于对话框的MFC程序,然后把下面两个文件分别保存为.h文件和 .cpp文件//InitGdiplus.h#pragma once#include <GdiPlus.h>using namespace Gdiplus;class CInitGdiplus{public: CInitGdiplus(void); ~CInitGdiplus(void);private: ULONG_PTR m_GdiplusToken; GdiplusStartupInp
2020-09-09 20:41:53
283
转载 MFC 对话框背景图片
在windows开发当中做界面的主要技术之一就是使用MFC,通常我们看到的QQ,360,暴风影音这些漂亮的界面都可以用MFC来实现。今天我们来说一下如何用MFC美化对话框,默认情况下,对话框的背景如下:那么,我们如何将它的背景变成如下界面呢,而且还要保留对话框的移动功能,漂亮背景如下:为了实现美化对话框背景的效果,我们需要让我们的对话框响应WM_CTLCOLOR消息,每当我们的对话框或者它的子控件需要重绘时,我们的对话框都会收到这个消息,因此,我们需要为对话框添加WM_CTLCOLOR的
2020-09-09 20:37:25
699
原创 CButton的Owner Draw属性设为True,报错
按钮的Owner Draw属性设为Trueclass CEditButton : public CButton{public: DECLARE_MESSAGE_MAP() afx_msg void OnNcPaint(); afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar); afx_msg void OnVScroll(UINT nSBCode, UINT nPos...
2020-07-24 16:01:04
610
转载 MFC 之 重绘按键Cbutton
上次我们学习了如何美化对话框的界面,这次我们为上次的对话框添加两个按钮,一个是关闭按钮,另一个是最小化按钮,好,现在我们先看一下效果:是不是很难看,因为我们的对话框美化了,所以我们的按钮也要美化,因为采用贴图的方式来美化,所以,我先给出这两个按钮的PNG格式的图片,该图片支持透明色,具体如下:关闭按钮效果图:最小化按钮效果图:这两张效果图是我自己从网上找的,可能不是很合适,但是用来教学,完全没有问题,它们的尺寸都是108*21,每张图片都有四个小图片,第一张和第四张小图片都是透明的,所以看不
2020-07-24 15:00:46
953
转载 MFC用CButton实现带滚动条的图片显示控件
我们知道MFC种的Picture控件基本上就是CStatic,而CStatic控件通过ShowScrollBar函数只可以使滚动条现实出来,但是不可以拖动,所以想只用CStatic控件实现大图片的现实并带有进度条是不容易实现的,然而我们又知道CButton控件的滚动条是可以拖动的,所以我们可以只通过CButton控件来实现我们这种想法,而不用另外添加CScrollBar控件。要想实现在CButton上实现带滚动条的图片显示控件,首先要重载CButton类,我用的重载类名字是CButtonPic...
2020-07-24 14:59:55
859
转载 MFC使用CButton的显示区域作为画布显示图像
1.在对话框中添加一个CButton控件,然后在类向导中新建一个继承自CButton的类class CDisplayArea : public CButton{//...}2.在该对话框的头文件中声明一个CDisplayArea类的对象,然后和新添加的CButton按钮绑定到一起class CNDTDisplayDlg : public CDialogEx{ CDisplayArea m_DispArea;}void CNDTDisplayDlg::DoDataExchang...
2020-07-24 14:58:43
282
转载 MFC 重载CEdit文本框 “垂直居中”
在MFC中CEdit控件的对齐方式只有 左、右对齐,居中对齐,但是没有垂直居中对齐,对于单行的CEdit来说,例如 字体高度是 30px,而CEdit有30px的话,那么我们输入的字体就会过于偏上,很是影响美观(如图:)解决方案:将字体的输出位置往下偏移一定的位置就OK了,这里提供的偏移方法是将CEdit的工作区域往下偏移,所谓的工作区域也就是能够显示字体的区域.代码如下:①、在创建CEdit的时候 添加 多行的属性,ES_MULTILINE,因为对于单行的CEdit是不能设置工作区域的,我
2020-07-23 11:32:37
1709
转载 重绘编辑框CEdit(继承CEdit方式)
编辑框是常用控件之一,同时也是一种完全自实现较为繁琐的控件。本例实现了对编辑框的简单的自绘制,在保留其自身的强大功能的前提下,实现了编辑框的边框、背景、文字颜色以及禁用态的各种颜色的替换。要想重绘,我们必须知道要绘什么。通过观察默认的编辑框我们可以很清楚的看到编辑框有三个最基础的部分需要我们绘制,他们分别是3D边框、背景和文字,再进一步分析我们会发现他们是一个基本窗口的两个部分,即客户区和非客户区。这样一来我们就知道应该用什么函数有针对性的绘制什么区域了,由于提供了源码,这里仅就基本原理和...
2020-07-22 19:57:12
1710
1
转载 MFC 在picture控件中,嵌入一个对话框
一、对话框中显示对话框的方法:1、首先创建要在对话框里显示的那个对话框,命名为:IDD_INNER。设置这个对话框的属性:1)、“Style”选择“Child”;中文版“样式”选择“下层”。2)、“Border”为“None”;中文版“边框”选择“无”。2、为了显示时能够准确定位,我们可以在右边要显示对话框的地方放入一个Pic控件,命名为:IDC_STATIC_RECT,Visible属性去掉。3、得到Pic控件客户区坐标//CDlgParent.cpp ——OnInitDialog(..
2020-07-01 23:04:16
771
转载 c++ GDI+ 初始化
首先创建一个基于对话框的MFC程序,然后把下面两个文件分别保存为.h文件和 .cpp文件//InitGdiplus.h#pragma once#include <GdiPlus.h>using namespace Gdiplus;class CInitGdiplus{public: CInitGdiplus(void); ~CInitGdiplus(void);private: ULONG_PTR m_GdiplusToken; Gdipl...
2020-07-01 21:29:22
387
转载 vc++ GDI+实现以鼠标为中心缩放图片(并且可以拖动)
按以下步骤操作,即可实现。1. 首先创建一个基于对话框的MFC程序,然后把下面两个文件分别保存为.h文件和 .cpp文件//InitGdiplus.h#pragma once#include <GdiPlus.h>using namespace Gdiplus;class CInitGdiplus{public: CInitGdiplus(void); ~CInitGdiplus(void);private: ULONG_PTR m_Gdipl...
2020-07-01 21:17:51
1587
转载 sql语句查询:sql server和access 数据库里的所有表名,字段名
sql语句查询:sql server和access 数据库里的所有表名,字段名 sql语句查询:sql server和access 数据库里的所有表名,字段名SQL SERVER 查看所有表名:select name from sysobjects where type='U'查询表的所有字段名:Select name from
2013-08-16 08:12:49
4304
转载 uct时间格式如何转换成北京时间
uct时间格式如何转换成北京时间得到一个UCT时间格式 如:1346030160如何才能转换成:2012/08/27,09:16:00void CEeDlg::OnButton18() { // TODO: Add your control notification handler code here time_t ltime = time(NULL);//13460301
2013-08-06 10:21:17
3332
转载 VC++ 实现整个对话框透明的效果SetLayeredWindowAttributes
SetLayeredWindowAttributes函数需要WINDOWS2000以上的系统才能支持,包含在新的SDK中。 使用方法:在对话框的OnInitDialog()加入:SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x
2013-07-24 13:46:30
609
转载 C++使用ADO2数据库类查询、添加、修改、删除操作
C++使用ADO2数据库类查询、添加、修改、删除操作 在工程中添加ado2.h、ado2.cpp两个文件 如果项目之前在XP在编译,在换到WINDOWS7编译时可能会出错,这是因为msado15.dll和MSJRO.DLL版本的问题。XP SP3下msado15.dll:2.81.3014.0 MSJRO.DLL:2.81.3012.0此文件在:C:\Program Files
2013-07-24 10:37:31
1160
转载 数组名的含义、指针含义
数组名的含义 int a[2]={1,2}; cout cout cout cout cout 0012F0C80012F0C80012F0C818由此可见, 数组名a的值、&a、&a[0]的值相同,而a[0]为数组的第一个元素。
2013-07-04 15:04:23
576
转载 静态成员变量
静态成员变量 1静态成员函数只能访问静态变量,因为静态变量不含this指针2静态成员变量 不但被类的各个对象共享,而且也被派生类的对象共享 示例: class base{public: static int num;}; int base::num=0; class derived:public base{};
2013-07-04 15:03:02
451
转载 多态
多态 何为多态?多态即是多种形态。多种形态是指一个事物的某种属性会出现多个不同的状态。比如:云的形状 可能是圆 可能是椭圆 可能是马的样子 也可能是牛的样子又如鸟: 有的鸟会飞 有的鸟不会飞,有的鸟飞的高、有的鸟飞的低C++中 实现 即是 : 一个接口,多种实现运行时多态 在计算机中,如何描述这种多态?主要的使用方法乃是
2013-07-04 15:01:04
438
转载 类
类 所有的类 都只有一个析构函数和赋值函数 但可以有多个构造函数 对于任意类,C++编译器会自动产生4个缺省的函数,分别是: A() // 缺省的无参构造函数 如果定义了任意一个构造函数,则此默认构造函数失效 A(const A &a); // 缺省的拷贝构造函数,即浅拷贝
2013-07-04 15:00:08
373
转载 static_cast
static_cast用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。 注意:static_cast不能转换掉expression的const、volatile、或者__unaligned属性。 它主要有如下几种用法: ①用于类层次结构中
2013-07-04 14:59:25
417
转载 操作符重载
操作符重载 #include #include using namespace std; //定义水果类 class Fruit{ string name; string colour;public: friend istream& operator>>(istream&,Fruit&); /
2013-07-04 14:58:32
417
转载 指针数组 数组指针的区别
指针数组 数组指针的区别 这两个概念极易混淆,可以用以下方式辅助理解:指针数组整形数组字符数组 由此可知,指针数组的含义为数组,数组元素为指针类型 示例:Char *p[2]={“ab”,”cd”};数组指针整形指针字符指针 由此可知,数组指针的含义为指针,此指针所指的为数组 示例:Char
2013-07-04 14:54:47
389
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人