摘要: 如果說得不好,請盡情地噴。如果覺得這一篇文章誤人子弟,請提醒我刪除,或者加一句:此文有害,請慎入。謝謝。假設我們要做一個電梯軟件,這是一個很簡單的軟件了,需求分析我就不做了,大家都坐過電梯,不加詳談。好了,我們先畫一個最簡單的用例圖。如下:如果我們要用這個圖來進行代碼編寫,那真是天方夜譚了。我們要把它細化。我們知道了乘客的各個需求功能,每一個功能都會有一個場景,這是妳要明白的了。好吧,我不想解釋場景。拏等電梯來說,我們來畫一個場景圖,我用活動圖來表示,如下:這個圖已經有一絲程序流程圖的味道了吧。到了這裡的時候,我們就可以看出,乘客按向下或向下的按鈕來等電梯,進電梯,齣電梯。外面那個嚮上嚮下的燈 阅读全文
posted @ 2013-07-18 21:08 夜雨無聲 阅读(527) 评论(2) 推荐(0) 编辑
摘要: 假设我们要画一个坐标图,里面可能还需要画网络线、XY各个单位的值、曲线或直线等,可能的函数代码如下:void OnPaint (){ CPaintDC dc (this); DrawXY (&dc); DrawValues (&dc);}当然,里面一般要使用双缓冲,以减少闪烁。画XY的时候,我们知道,我们要进行for 循环,以来画格子或是单位如|||___________________________________>0 1 2 3 4 5 60~6都是需要用for画出来的。如果这样的话,每一次OnPaint 都会for,但是,一般情况下,这个图是不会变的(除非改变了窗 阅读全文
posted @ 2013-06-26 08:43 夜雨無聲 阅读(396) 评论(0) 推荐(0) 编辑
摘要: 1. 新建一个从 CListCtrl 继承的自定义类。2.处理消息 WM_SIZE 添加:ShowScrollBar(SB_BOTH,FALSE);3.Ok,问题解决。 阅读全文
posted @ 2013-05-15 17:41 夜雨無聲 阅读(569) 评论(0) 推荐(0) 编辑
摘要: 在软件运行时,在VS的输出窗口中,有可能出现如标题的错误提示,但程序又运行无误。解决方案是,“调试”->“异常”,出现的界面如下:将左边的全勾上,如果再出现以上的运行时错误提示,就可以中断到调试器,便可以通过查看调用堆栈解决了。 阅读全文
posted @ 2013-04-17 11:29 夜雨無聲 阅读(11915) 评论(3) 推荐(2) 编辑
摘要: 1.创建一个ATL COM AppWizard工程,如图:2. 选择 Dynamic link Library (DLL),其它两个请百度,或参照其它文档。如下图:3. 添加一个自己的COM类,用于导出需要用到的接口。步骤如下:选择类视图->右键工程->新建类(New Class) 如下图:弹出对话框后,选择 ATL CLASS,输入类名,如下图:然后,在类视图中,你会看到:多了一个接口和一个类,这都是你刚才添加的。4. 添加导出接口。右键 "IHelloWorld"->AddMethod,如下图:弹出对话框,填写函数名及参数即可,如下图:然后,我们再看 阅读全文
posted @ 2013-04-02 23:26 夜雨無聲 阅读(6711) 评论(0) 推荐(0) 编辑
摘要: // disk_drive_test.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <windows.h>#include <Winioctl.h>#include <stdlib.h>typedef struct PartitionInfo { char chDrive; PARTITION_INFORMATION info;} PartitionInfo, *LPPartitionInfo;typedef 阅读全文
posted @ 2013-03-09 11:55 夜雨無聲 阅读(5281) 评论(2) 推荐(0) 编辑
摘要: 废话不多说,直切主题。(以下的示例说明均以MDI作为叙述)整个程序就相当于一个 文档模板[CSingleDocTemplate/CMultiDocTemplate]列表,单文档就是只有一个模板,多文档就是有多个模板。一个模板就包括:菜单[Menu]、文档[Doc]、框架[Frame]、视图[View]注意,他们是一个整体。看一下代码:CMultiDocTemplate* pDocTemplate;pDocTemplate = new CMultiDocTemplate( IDR_MDI_TETYPE, // 菜单资源ID RUNTIME_CLASS(CMDI_testDoc), ... 阅读全文
posted @ 2013-02-19 17:32 夜雨無聲 阅读(3492) 评论(0) 推荐(0) 编辑
摘要: 1. 使窗口不具有最小化属性。2.设置父窗口 [这里要细看哦,亲]HWND hProgman = ::FindWindow (_T ("Progman"), NULL);HWND hDesktop = ::GetWindow (hProgman, GW_CHILD);::SetParent (hYourWin, hDesktop);附加一点,不显示在任务栏,请把EX属性设为:WS_EX_PALETTEWINDOW关键字:固定 桌面 显示桌面 阅读全文
posted @ 2013-02-19 16:55 夜雨無聲 阅读(825) 评论(0) 推荐(0) 编辑
摘要: 今天一开机,发现声音图标又不见了,以前都发生过一次。郁闷了。老是用功能键进行音量控制,一点都不爽。后来百度发现神贴,关掉进程 explorer.exe 再开 explorer.exe就OK了。原贴:http://tieba.baidu.com/p/741969843 阅读全文
posted @ 2012-12-20 21:55 夜雨無聲 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 今天在看一开源代码时,发现一个新关键字 __super,以为是C++新出的关键字,后来发现原来这是VS2005推出的C++关键字,其它编译器并不能支持。它类似于 Java 的 super,不过它不是用 [.] 操作符,而是用 [::] 操作符,如:class A {public: void Test () { printf ("xxxx"); }};class B : public A {public: void Test () { __super::A (); }}; 阅读全文
posted @ 2012-12-09 19:47 夜雨無聲 阅读(6383) 评论(0) 推荐(1) 编辑