- 浏览: 192744 次
- 性别:
最新评论
文章列表
#include <stdio.h>
#include <windows.h>
int main(int argc,char *argv[])
{
MessageBox(NULL,"Hello",NULL,MB_OK);
char temp[256];
memset(temp,0,256);
if(argc!=1){
int length =strlen(argv[1]);
char *ch=(char *)malloc(length);
strcpy(ch,argv[1]);
for(int i=0;i<length;i+ ...
- 2012-08-09 13:19
- 浏览 271
- 评论(0)
一个简单的学习加强实例,用VC取得文件的关联图标,看下面的代码一起来学习下!
CFileDialog fileDialog( TRUE,"*.*",NULL,NULL,NULL);
if (fileDialog.DoModal() != IDOK) return;
CString str= fileDialog.GetFileExt();
str="."+str;
SHFILEINFO sfi;
SHGetFileInfo(str,0,&sfi,sizeof(sfi),SHGFI_ICON|SHGFI_LARGEICON|S ...
- 2012-08-09 13:18
- 浏览 241
- 评论(0)
第一种方法:使用SetWindowPos函数
CWnd::SetWindowPosBOOL SetWindowPos( const CWnd* pWndInsertAfter, int x, int y, int cx, int cy,UINT nFlags );
返回值如果函数成功,则返回非零值;否则返回0。
说明
调用这个成员函数以改变子窗 ...
- 2012-08-09 13:16
- 浏览 353
- 评论(0)
将窗体置顶的方法有:
//将窗体置顶的API函数
::SetWindowPos(m_hWndTop,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
//MFC
pDlg->SetWindowPos(&CWnd::wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
说明:&CWnd::wndTopMost 是当前的最顶层窗口,调用函数,会 ...
- 2012-08-09 13:15
- 浏览 297
- 评论(0)
也许我们都碰到过这种情况,当你想重画某个窗口的时候,或你需要每隔一段时间要进行重画窗口,窗口会不停的闪烁。那么如何消除闪烁呢?借鉴了别人的经验,自己也总结一下,现将总结的几种方法介绍一下,供大家参考。1、将Invalidate()替换为InvalidateRect()。
因为Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而InvalidateRect()仅仅重画Rect区域内的内容,所需时间会少一些。所以替换之后在很大程度上会减少闪烁。如果你确实需要改善闪烁的情况,计算一个Rect所用的时间比起重画那些不需要重画的内容所需要的时间要少得多。
2、不要让系统擦除你 ...
- 2012-08-09 13:13
- 浏览 403
- 评论(0)
文档与序列化
一、文档的基本特征
文档类文件是从CDocument继承而来的。
The CDocument class provides the basic functionality for user-defined document classes. A document represents the unit of data that the user typically opens with the File Open command and saves with the File Save command.
翻译:文档类提供用户自定义文档类的基本功能。一个文档的打开命 ...
- 2012-08-09 13:11
- 浏览 282
- 评论(0)
第一部分:
五个命令ID: 处理函数
ID_FILE_NEW CWinApp::OnFileNew
ID_FILE_OPEN CWinApp::OnFileOpen
ID_FILE_SAVE CDocument::OnFileSave
ID_FILE_SAVEAS CDocument::OnFileSaveAs
ID_FILE_CLOSE CDocument::OnFileClose1.ID_FILE_NEW
CWinApp::OnFileNew调用CDocManager::OnFileNew。
|
CDocManager::OnFileNew判断文档模板是 ...
- 2012-08-09 13:09
- 浏览 267
- 评论(0)
最近的工程中要用到了vc中关于文件关联的操作,费了不少周折,这里就简单做一个小结。
(1)使用EnableShellOpen自动完成注册表的注册信息
这种情况下,只需要在CWinApp子类的InitInstance函数中添加如下代码就行
// Enable DDE Execute o ...
- 2012-08-09 13:05
- 浏览 209
- 评论(0)
1.MFC编写Activex控件,使用classwizard添加automation method,在所有使用BOOL参数的地方都出现下如下警告:warning MIDL2039 : interface does not conform to
[oleautomation] attribute : [ Parameter ... ...
修改odl文件中出错的boolean为VARIANT_BOOL即可
2.学习ActiveX开发该看的书《Visual C++ 5 Active X编程指南》
学习COM该看的书《Inside COM》《COM原理与应用》
3.创建一个容器,让控 ...
- 2012-08-08 14:44
- 浏览 452
- 评论(0)
这几天在开发过程中遇到一个问题,即在网页中无法响应ActiveX控件自定义事件。经查资料后,明白ActiveX控件的事件如果要通过JavaScript等脚本语言响应,必须实现IProvideClassInfo或者IProvideClassInfo2接口。因为脚本语言必须通过这个接口获得控件的接口信息。
用MFC ActiveX Control Wizard生成的项目,其接口的实现是通过嵌套类完成,要实现IProvideClassInfo接口我们可以按下列步骤进行:
1. 在COleControl的继承类.h文件中加入代码:
BEGIN_INTERFACE_PART(ProvideClas ...
- 2012-08-02 17:52
- 浏览 376
- 评论(0)
在C++类中定义常量,有以下两种方法:1.在类定义体内定义枚举常量;
例如:
class A
{
public:
enum
{
THREAD_NUM = 100,
MEM_BLOCK_SIZE = 1024,
PORT = 8080
};
};
这样定义出来的常量值在程序运行过程中是不能被修改的,编译的时候就已经确定了这些常量的值;
2.在类定义体中声明使用static const来修饰成员常量,然后在类定义体外对这些成员进行初始化;也就是说在类定义体内定义const类型的静态成员常量;
例如:
class A
{
public: ...
- 2012-07-20 14:05
- 浏览 351
- 评论(0)
SetWindowLong(this->GetSafeHwnd(),
GWL_EXSTYLE,
GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);
HINSTANCE hInst = LoadLibrary("User32.DLL");
if(hInst)
{
typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD);
MYFUNC ...
- 2012-07-05 09:52
- 浏览 490
- 评论(0)
STATIC类型的控件添加到窗体上如果不重命名ID的话,都将保持默认的ID:65535,
通过配置文件根据ID动态子类化的时候将出现问题:相同的ID将只有一个能被子类化,其它的无法子类化;
不改变ID想解决此问题的方法:遍历相同的ID,匹配时添加Text是否相等的条件,但Text也有相等的情况;
这些控件包括:Static,Picture,GroupBox;
- 2012-06-20 09:58
- 浏览 297
- 评论(0)
GetCursorPos(&point);
CRect rc;
rc.left=0;
rc.top=70;
rc.right= rc.left+50;
rc.bottom= rc.top+200;
if(rc.PtInRect(point))
{
Cffdlg *pki=new Cffdlg;
pki->Create(IDD_DIALOG3,this);
pki->ShowWindow(SW_SHOW);
}
else
{
Cffdlg *pki=new Cffdlg;
...
- 2012-06-19 16:36
- 浏览 332
- 评论(0)
// 更改当前字体
LOGFONT lf;
pDC->GetCurrentFont()->GetLogFont(&lf);
CFont font, *pOldFont;
lf.lfCharSet=134;
lf.lfHeight=-150;
lf.lfWidth=0;
strcpy(lf.lfFaceName, "隶书");
font.CreateFontIndirect(&lf);
pOl ...
- 2012-06-18 13:15
- 浏览 461
- 评论(0)