Welcome 微信登录

首页 / 软件开发 / C++

再谈客户区对话框拖动操作

再谈客户区对话框拖动操作

再谈客户区对话框拖动操作2010-06-15 vckbase NorthTibet《无标题对话框的拖动》,示范了如何用鼠标点击窗口或对话框背景(即客户区)进行拖动操作,文章中提供的解决方法在没有上下文菜单的情况下运行很正常,一旦有上下文菜单时,文中所提供的方法便显现出了缺陷——上下文菜单无法显示出来。本文将针对这个问题对前一篇提出的方法进行改进。当初实现拖动的基本思路是改写 OnNcHitTest 例程,让鼠标在客户区中的点击始终返...
VC++编程实现对曝光不足照片的修复

VC++编程实现对曝光不足照片的修复

VC++编程实现对曝光不足照片的修复2010-06-15引言一般来说,照相产生缺陷的原因主要有对焦不准、光圈选择不合适以及暴光不足等几种情况,前两种情况的偶然性较强,而曝光不足虽也具有一定的偶然性但对于某些特殊情况比如暗中侦察等不方便使用闪光灯的场合则较为普遍。因此,有必要对曝光不足的照片提出一种比较通用的照片修复处理方法。修复方法的设计根据照相的一般原理:物体反射的光线经过透镜投影到胶片上,胶片上的感光颗粒根据光线的强弱做出不同程度的分解从而显现出不同的...
在C++中如何使用调试器逐步跟踪程序

在C++中如何使用调试器逐步跟踪程序

在C++中如何使用调试器逐步跟踪程序2010-06-15在VC++6.0中的单步调试:调试重要的几个键:F9在当前光标所在的行下断点,如果当前行已经有断点,则取消断点。F5调试状态运行程序,程序执行到有断点的地方会停下来。F10单步执行程序。CTRL+F10运行到光标所在行。F11和F10的区别是,如果当前执行语句是函数调用,则会进入函数里面。SHIFT+F11跳出当前所在函数。步骤:1,保存为c或文件2,根据断点调试找到错误处。3,采用F10或F11单步...
如何去掉MDI子窗体的标题栏

如何去掉MDI子窗体的标题栏

如何去掉MDI子窗体的标题栏2008-01-05windows在创建窗体时使用一个CreateWindowEx函数,通过传给这个函数的参数来确定窗口的样式。而CreateParams虚函数是VCL在创建窗口之前调用的,用来取得要创建的窗口的样式的及其它一些相关属性的(Params参数),这里先通过调用TCustomForm的CreateParams函数来取得标准的窗口属性,再通过Params.Style^=WS_CAPTION;把窗口样式里的标题栏属性去掉...
VC++实现混合静态分裂视窗的方法

VC++实现混合静态分裂视窗的方法

VC++实现混合静态分裂视窗的方法2010-06-15一 前言在许多视窗应用软件中,通常要在屏幕上同时显示若干个子视窗,以显示同一个文档的不同部分,或者是在每个视窗中分别显示不同文档的内容。为了实现多视窗界面,可以采用MDI(Multiple Document Interface)的多文档模式进行处理,但是多文档的应用程序设计与维护相对于单文档的应用程序而言比较复杂。而且,如果要在屏幕上同时显示多个子视窗,通常要利用视窗重叠函数进行管理,每个子视窗的位置往...
运行于以太网的基础协议

运行于以太网的基础协议

运行于以太网的基础协议2010-06-151、引言前段时间编写了一个网络监听工具。为了分析抓到的数据包,要熟悉各种网络协议。本人痛苦的发现网上很少有集中讲解这方面的文章,而图书大部分讲解得不够仔细,小部分专门研究网络协议的图书又太大,不适合我们的要求。故把常用的以太网协议写出来和大家分享。2、以太网的特点以太网采用的是CSMA/CD技术,即带碰撞检测的载波侦听多址访问。在CSMA/CD技术中,如果网络上没有数据,则任何时候都可以将数据传送出去。如果网络被使...
用BCB3.0制作桌面动画

用BCB3.0制作桌面动画

用BCB3.0制作桌面动画2008-01-05大家好。记得以前玩过一些桌面宠物类的小游戏,比如说:一只小猫在桌面上不停的追逐鼠标等等。当时我刚开始学Windows的,曾经对这类程序为什么能在桌面上直接作动画感到百思不得其解。下面我们就来谈谈制作桌面动画的原理。其实说穿了很简单:就是先准备几张连续的图片,然后在桌面上建一个形状不规则的窗口(窗口具体是什么形状要由显示什么样的动画来决定),然后一边移动窗口,一边给窗口更换图片就行了。是不是很简单。下面就用BCB...
用Viusal C++实现字符串分割函数

用Viusal C++实现字符串分割函数

用Viusal C++实现字符串分割函数2010-06-15一、用Delphi写程序的时候,读取文本形式的配置文件,需要对字符串进行分析,如“姓名=刘德华;年龄=40;国籍=中国;”,Delphi有现成的分析函数,只要给出分割符“;”就行了。后来用做相似的字符串分析,VC没有提供这样的函数,上网搜了一下也没有找到,所以自己写了一个函数,虽然函数比较简单,但是或许有朋友需要,刚好可以提供方便!二、函数代码://...
如何用BCB做出可移动的菜单

如何用BCB做出可移动的菜单

如何用BCB做出可移动的菜单2008-01-05有三种方法:一:放一个coolbar,在其上放一个toolbar,设置toolbar的showcaptions为true,flat为true,在上面新建一个toolbotton加入一个popupmenu,设置好其items设置toolbutton的dropdownmenu为popupmenu,设置其style为btsdropdown但是这种方法做出来的菜单其实和你要求的并不一样。它的菜单其实是受在按钮旁边的一...
VC实现自动监测光驱状态的改变

VC实现自动监测光驱状态的改变

VC实现自动监测光驱状态的改变2010-06-15Windows系统通过GDI(图形设备接口)将系统的硬件和用户可以操作的编程接口相分离,以保证系统的稳定型和安全性。当某一个设备的硬件配置发生变化时,Windows发送广播消息WM_DEVICECHANGE给相关的应用和设备驱动程序,此时在应用程序中可以截获该消息并分析其中的消息参数,先分辨当前的消息内容,然后调用不同的事件处理程序。本文中主要考虑的是光驱的弹出和送入事件,因此程序设计时只需对逻辑驱动器进行...
CB的Form最小化时无动画的原因

CB的Form最小化时无动画的原因

CB的Form最小化时无动画的原因2008-01-05问: 我现在也搞不懂,甚至认为无法让CB的主窗口有动画的效果。 因为在任务条上的按钮所代表的窗口是Application窗口,而不是 Project所选定的Mainform。如果强行让Mainform动态地Minimize, 就会最小化到桌面的左下角去了。答:我基本上同意你的看法。Delphi & BCB 中的的主窗口都是TApplication,一般情况下,这个窗口居于屏幕中间,大小为0x0。...
一个简单的登录对话框的实现

一个简单的登录对话框的实现

一个简单的登录对话框的实现2010-06-15不会游泳的鱼要求用户正确输入用户名和密码,然后才能进入系统。刚好前几天有个人问俺如何在程序启动时先启动登录对话框的问题,俺就给他写了个示例程序,今天拿出来给大伙共享,有什么不正确的地方请大家多多指教。一、在 LoginTest.h 文件中添加一个 public 的 布尔型变量 BOOL m_bSuccessLogin;二、在 LoginTestView.h 文件中添加 CLoginTestApp* pApp =...
基于VC++的OpenGL编程讲座之坐标变换

基于VC++的OpenGL编程讲座之坐标变换

基于VC++的OpenGL编程讲座之坐标变换2010-06-23OpenGL通过相机模拟、可以实现计算机图形学中最基本的三维变换,即几何变换、投影变换、裁剪变换、视口变换等,同时,OpenGL还实现了矩阵堆栈等。理解掌握了有关坐标变换的内容,就算真正走进了精彩地三维世界。一、OpenGL中的三维物体的显示(一)坐标系统在现实世界中,所有的物体都具有三维特征,但计算机本身只能处理数字,显示二维的图形,将三维物体及二维数据联系在一起的唯一纽带就是坐标。为了使被...
为VC++应用程序对话框添加透明位图

为VC++应用程序对话框添加透明位图

为VC++应用程序对话框添加透明位图2010-06-23我们在进行程序的界面设计时,常常希望将位图的关键部分,也既是图像的前景显示在界面上,而将位图的背景隐藏起来,将位图与界面很自然的融合在一起,本实例介绍了透明位图的制作知识,并将透明位图在一个对话框中显示了出来,界面效果如图一所示:图一、对话框界面上透明显示位图一、实现方法绘制"透明"位图是指绘制某一位图中除指定颜色外的其余部分,我们称这种颜色为"透明色".通过将...
<< 31 32 33 34 35 36 37 38 39 40 >>