vc
文章平均质量分 67
evil_119
C/C++ 程序员
展开
-
vs编写ActiveX控件,无法运行调试配置
在VS中开发MFC ActiveX控件,开发完后,通常使用VS自带的容器ActiveX Control Test Container来运行ActiveX控件。此容器在VS安装后的文件中是找不到的,需要自己手动获取。如下所述: (1)按照你的VS所安装的路径,找到VCxxxxSamples.zip这个压缩文件,其在Samples下的名为2052文件夹中,如在我的电脑上,其所在原创 2015-06-17 09:18:51 · 1588 阅读 · 0 评论 -
CEF3的使用说明及CMake使用
一.CEF简介Chromium Embedded Framework (CEF)是个基于Google Chromium项目的开源Web browser控件,支持Windows, Linux, Mac平台。简单说就是Chrome的开源版,目前很多所谓的双核浏览器,实质就是chrome+IE的双核。基于HTML5的支持,以及v8引擎的效率,在软件中嵌入chromium是个不错的选择,而且目前市面上应用...原创 2017-12-08 16:48:16 · 12319 阅读 · 5 评论 -
开发界面之窗口边框重绘
基于上篇已经解决了富图软件窗口child的效果。这边主要仿照其重绘边框——即活动窗口边框高亮,本文不讲标题栏/border重绘(难度是比Client绘制要难,但是社区也有人做了相应的demo),基于富图考虑,它不要标题栏,我们也用无边框窗口绘制就好了。1.边框及标题栏绘制void CDlgFrm::OnPaint(){ CPaintDC dc(this); // device cont原创 2017-11-24 11:00:35 · 1634 阅读 · 0 评论 -
子窗口与弹出窗口的坑使用笔记
之前写过一篇日志说child窗口edit不能输入。虽然解决了,但并不完美,后面发现能输入了,但是鼠标不能选择文字,键盘却可以。再加上以前遇到的一些问题,比如窗口透明,背景色,甚至子窗口的Z序也让人蒙圈(后创建的在后面去了)等都不顺利,换句话说是相对popup窗口而言。总之微软对于子窗口的实现就像个半成品。关于edit不能选择文字,还发现一个问题可以解决,就是去掉子窗口的标题栏,如果实在需要拖动原创 2017-11-21 18:31:54 · 694 阅读 · 0 评论 -
mfc非模态对话框Child窗口CEdit控件获取不到焦点问题
遇到的问题就是创建一个非模态的子窗口。发现子窗口上的edit控件总是不能被激活,开始担心自己工程出问题了,于是新建了一个sdi,如图问题依然存在,既然如此那就在新工程中找问题,先设置对话框style,popup/overlap都能正常使用,再试试模式对话框(有点没必要,因为模式对话框不能是child)依然没问题,为了保守起见,还是多托几个控件靠谱,发现只有edit无效,尴尬。那就只能对edit下手原创 2017-07-25 16:25:20 · 3871 阅读 · 2 评论 -
MFC状态栏设置图标自动变高
SetPaneIcon原创 2017-09-06 14:44:39 · 1036 阅读 · 0 评论 -
写MFC程序还是先注释写注册表或者先清理注册表吧!
血的教训,浪费了大把时间调试找问题,然而却不知道MFC自动写注册带来的巨坑有多坑。一次次让你怀疑人生,微软这个设计老子真心想拍死你。1.自动写注册表,这里说自动是创建工程自带SetRegistryKey将巨坑埋下伏笔2.注册信息不是空,讲道理应该为空,但老vc都知道软件保留用户操作习惯是默认的。3.注册信息奇多,含菜单/工具栏/状态栏/停靠窗口,,,似乎除了main client原创 2017-08-04 18:45:26 · 1062 阅读 · 0 评论 -
由Create一个Child窗口,导出的z序问题
首先遇到的情况,直接看图看到这现象有点怀疑人生,Windows默认Create顺序是按照Z序依次递增的,然而为何会出现如此现象?首先和窗口类型确实有关:用的是Child,如果使用popup/overlapped都正常,我们通常非模态对话框用overlapped最多,这次要做子窗口管理,才发现有如此问题。考虑在窗口类型上选择:层叠/弹出/子窗口。选择Child类型是必须的(根据需求)。于是想原创 2017-07-17 18:13:35 · 343 阅读 · 0 评论 -
由花屏引出的WS_CLIPCHILDREN,WS_CLIPSIBLINGS理解
WS_CLIPCHILDREN,使得父窗体在绘制时留出其上的子窗体的位置不去画它,而那片区域留着子窗体去画。WS_CLIPSIBLINGS,必须用于子窗体(Child),使得该子窗体在收到WM_PAINT时同时令其兄弟窗体(MSDN讲必须不在该区域,即不与之重叠)也会被PAINT。//下面也是对WS_CLIPSIBLINGS的理解所有的overlapped窗口和popup窗口,都有原创 2017-07-16 16:33:56 · 1921 阅读 · 0 评论 -
VC ScreenToClient与ClientToScreen
The ClientToScreen function replaces theclient-area coordinates in the POINT structure with the screen coordinates. The screen coordinates are relative to the upper-left corner of the screen. Note原创 2017-07-14 11:24:07 · 1011 阅读 · 0 评论 -
Powershell的使用
由于最近项目需要使用windows脚本编程,发现普通批处理又不太好使,习惯了linux的命令行ls,cp等,总觉得windows的命令行太难玩,可编程性还不如linux的shell(本来linux shell 可编程性就不是很好)。于是上网查找资料发现powershell这个东西。研究了一天也算是达到了项目的要求,power本来就是一个很不低调的词,微软敢这么取名,肯定不是几天能完全掌握的,功能强原创 2016-08-04 19:00:45 · 3024 阅读 · 0 评论 -
跨进程通信之WM_COPYDATA
一、MSDN提供:#define WM_COPYDATA 0x004A数据结构:typedef struct tagCOPYDATASTRUCT { ULONG_PTR dwData; DWORD cbData; PVOID lpData;} COPYDATASTRUCT, *PCOPYDATASTRUCT;dw原创 2016-04-22 14:07:50 · 1245 阅读 · 0 评论 -
mssoap与gsoap访问WebService的使用
1.mssoap使用:本人win7 x64 vs2010测试机,包含头,引用库,命名空间#include "stdafx.h"#include #include "windows.h"#import "msxml4.dll"//using namespace MSXML2;#include "msxml.h"#import "C:/Program Files (x86)/C原创 2015-07-31 13:59:13 · 2548 阅读 · 0 评论 -
ActiveX控件编写(OCX),及属性页访问控件类对象
ActiveX控件编写:由MFC向导直接生成ActiveX控件。编译即可得*.ocx控件。并注册到系统。1.如需显示自定义对话框:// CMyCtrl消息处理程序int CMyCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct){ if (COleControl::OnCreate(lpCreateStruct) == -1) ret原创 2015-06-24 16:38:54 · 3110 阅读 · 1 评论 -
vc将对话框缩小到托盘
一、托盘简介 所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。其实,托盘区的编程很简单,下面简要阐述一下子喽^_^ 二、托盘编程相关函数 其实呢,把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息原创 2015-06-05 16:34:33 · 504 阅读 · 0 评论