
文档/视
zgl7903
iPad回帖太累人
展开
-
ODBC 枚举数据表名
#include <afxdb.h>class CDatabaseEx : public CDatabase{ DECLARE_DYNAMIC(CDatabaseEx)public: CDatabaseEx(){};public: int EnumTables(CStringArray &sTabs);};IMPLEMENT_DYNAMI...原创 2020-04-06 12:53:43 · 466 阅读 · 1 评论 -
MFC 数据项写入CSV文件
//将数据项写入CSV文件int PutCSVItemLine(FILE *file, CStringArray &sItemLine){ //准备行数据 CStringA sLineString; //循环取子项 for(INT_PTR nItem=0; nItem<sItemLine.GetSize(); nItem++) { //取子...原创 2020-02-25 13:14:27 · 2480 阅读 · 3 评论 -
枚举剪切板数据和格式名称
if(OpenClipboard()) //open clipboard { UINT uFormat = 0; while(uFormat = EnumClipboardFormats(uFormat)) //emulate format { HGLOBAL hGlobal = GetClipboardData(uFormat); //ge原创 2013-08-30 15:42:58 · 1398 阅读 · 0 评论 -
操作 WORD 画线
#import "office/MSO.DLL" rename("RGB", "msRGB")#import "office/VBE6EXT.OLB" no_namespace #import "office/MSWORD.OLB" \ rename("FindText", "msFindText")\ rename("ExitWindows","ExitWindowsEx")v原创 2013-11-26 09:40:02 · 1817 阅读 · 0 评论 -
使用字符串构造一个FILE指针
typedef struct __FILEX : FILE { CRITICAL_SECTION lock; __FILEX(LPCSTR string) { memset(this, 0, sizeof(*this)); InitializeCriticalSection(&lock); _flag =...原创 2013-12-12 16:26:15 · 771 阅读 · 0 评论 -
简易剪贴板查看器
//引用MSDN上的注释 The SetClipboardViewer function adds the specified window to the chain of clipboard viewers. Clipboard viewer windows receive a WM_DRAWCLIPBOARD message whenever the content of th原创 2013-12-26 11:45:05 · 2162 阅读 · 0 评论 -
获取单色位图指定坐标的数据
int GetMonoBMPData(LPBYTE pData, int nWidth, int x, int y){ int iOffset = y * (nWidth + 7)/8; //每行按字节对齐 iOffset += x/8; //每个像素占一位 UINT iData = pData[iOffset]; //所在的字节数据 return ((iData & (1<原创 2014-11-19 09:15:46 · 1585 阅读 · 0 评论 -
在任务栏上的时钟区域显示自己的内容 MFC 封装
//ClockTrayWnd.h#pragma onceclass CColockTrayWnd : public CWnd{ CWnd *m_pNotifyWnd; //通知窗口 UINT m_uNotifyMessage; //通知消息public: CColockTrayWnd() { m_pNotifyWnd = NULL; m_uNotify原创 2016-07-15 22:18:50 · 853 阅读 · 0 评论 -
让 基于 CWnd 类能接收键盘消息
让 基于 CWnd 类能接收键盘消息, 两个关键点 WM_GETDLGCODE 返回时增加 DLGC_WANTALLKEYS|DLGC_WANTCHARS, 第二 使用 SetFocus 选中焦点LRESULT CMyWnd::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) { // TODO: Add your原创 2017-02-16 17:30:14 · 1353 阅读 · 0 评论 -
解析和创建快捷方式
#include #include BOOL ResolveShortCut(LPCSTR pszShortcutFile, CHAR pszPath[MAX_PATH+1], CHAR szDescription[MAX_PATH+1]){ BOOL bRet = FALSE; *pszPath = 0; // assume原创 2017-12-15 21:28:19 · 384 阅读 · 0 评论 -
枚举多显示器信息 EnumDisplayMonitors 应用
class CMultiMonitorEnumerator{public: int m_iMontorNumber; typedef struct _tagVMonitorInfo_t { HMONITOR hMonitor; //显示器句柄 TCHAR szDevice[32]; //显示器名 RECT rcVirtual; //虚拟显示屏坐标 R...原创 2018-07-05 12:52:25 · 9442 阅读 · 0 评论 -
GDI+ 绘制模拟钟表
关键点: 窗口坐标(X轴向右,Y轴向下); 窗口角度逆时针; 关键函数DrawClock#if !defined(AFX_COLOCKSTATIC_H__619C9005_4652_45A8_BC24_801ECF6ED3EA__INCLUDED_)#define AFX_COLOCKSTATIC_H__619C9005_4652_45A8_BC24_801ECF6ED3EA__INCL...原创 2019-01-03 16:02:05 · 990 阅读 · 0 评论 -
将读入的文本文件数据转换为UNICODE
//文本转换为UNICODE//pInByte 从文本文件读入的数据//iInBytesLen 原始数据字节长度//pWchString 返回转换后的UNICODE数据(以0结束)//返回转换后UNICODE数据长度int ConvertText2Unicode(const BYTE *pInByte, const int iInBytesLen, LPWSTR *pWchStr...原创 2019-04-02 10:51:36 · 1399 阅读 · 0 评论 -
使用CFontDialog 选择字体
{ #ifndef CF_INACTIVEFONTS #define CF_INACTIVEFONTS 0x02000000L #endif //CF_INACTIVEFONTS //初始化字体结构体 LOGFONT lgFont={0}; //填充用于初始化LOFGONT GetFont()->GetLogFont(&lgFont); CFon...原创 2019-05-22 19:31:54 · 1130 阅读 · 0 评论 -
在菜单中搜索某项指定ID菜单经过的路径
//获取菜单路径BOOL GetMenuPath(HMENU hMenu, UINT uIDM, CStringArray &szPath){ //按位置搜索ID for(int iPos=0; iPos<GetMenuItemCount(hMenu); iPos++) { //获取菜单信息 TCHAR szString[128]; MEN...原创 2019-07-25 12:41:54 · 450 阅读 · 0 评论 -
使用文件映射获取打开的文件名
#include "stdafx.h"#include #include #include #include #include #include #include #pragma comment(lib, "psapi.lib")LPCTSTR GetFileNameFromHandle(HANDLE hFile) { static TCHAR pszFilename原创 2013-08-14 10:39:52 · 1138 阅读 · 0 评论 -
用于自定义数组/结构体数组的剪切板应用模板类
//用于自定义数组/结构体数组的剪切板应用类template class COwnerArrayDataClipboard { //用于剪切板数据结构体 typedef struct tagMYSTRUCTARRAY_t { int iCount; //记录数据个数 MYDATA data[1]; //数据 }MYSTRUCTARRAY, *LPMYSTRU原创 2013-08-09 11:07:06 · 1286 阅读 · 0 评论 -
用于自定义数据/结构体的剪切板应用模板类
//用于自定义格式数据/结构体的剪切板应用模板类template class COwnerDataClipboard { HWND hClipboardHwnd; //剪切板窗口句柄 UINT uFormat; //剪切板粘贴格式//Trace Error #define TraceErr(e) \ do{ \ dwErr=GetLastError();\原创 2013-08-09 10:40:32 · 1055 阅读 · 0 评论 -
使用 FlashWindowEx 实现闪屏效果
BOOL FlashWindowProc(HWND hWnd, int nCount, DWORD dwBaud){ BOOL bRet = 0;#ifndef FLASHWINFO typedef struct { UINT cbSize; HWND hwnd; DWORD dwFlags; UINT uCou原创 2010-02-02 21:53:00 · 4557 阅读 · 1 评论 -
通过文档模板-文档枚举窗口视句柄
CWinApp *pApp = AfxGetApp(); POSITION PosDocTemplate = pApp->GetFirstDocTemplatePosition(); while(PosDocTemplate) { CDocTemplate* pDocTemplate = pApp->GetNextDocTemplate( PosDocTemplate原创 2010-10-31 21:37:00 · 2258 阅读 · 0 评论 -
使用SetLayeredWindowAttributes API 实现透明窗口
//bAlpha form 0 to 255//When bAlpha is 0, the window is completely transparent.//When bAlpha is 255, the window is opaque.BOOL SetWindowAlpha(HWND hwnd, BYTE bAlpha){ BOOL bRet = 0; HMOD原创 2010-04-04 23:18:00 · 3043 阅读 · 1 评论 -
继承CStatic 平面坐标形式显示数据序列
#pragma once// TimeGraphics_Ctrl.h : header file//#include /////////////////////////////////////////////////////////////////////////////// CTimeGraphics_Ctrl window#define GRID_X_NUMBER 10原创 2009-09-06 14:38:00 · 1193 阅读 · 0 评论 -
获取应用程序版本信息
#pragma comment(lib, "VERSION.LIB")int CheckVersion(LPTSTR lpszFullPath, VS_FIXEDFILEINFO *pVerInfo){ BOOL bRet = 0; DWORD dwVerHnd; DWORD dwVerInfoSize = GetFileVersionInfoSize(lpszFul原创 2009-04-21 07:20:00 · 1614 阅读 · 0 评论 -
在指定的窗口指定的区域绘制指定的BMP图片
//显示位图//pWnd 显示窗口指针//rect 显示区域//bitMapFile 显示文件virtual BOOL Draw_Bitmap(CWnd *pWnd,CRect rect,LPCTSTR bitMapFile);virtual BOOL Draw_Bitmap(CWnd *pWnd,CRect rect,UINT IDB_BITMAP) {return(Draw原创 2008-07-30 19:54:00 · 916 阅读 · 0 评论 -
拷贝pWnd指向窗口的lpRect部分 写成BMP文件
//拷贝pWnd指向窗口的lpRect部分到文件Dstfile中(BMP文件格式)CopyScreenToFile(CWnd *pWnd, CRect *lpRect, LPCTSTR Dstfile){ if(!IsWindow(pWnd->GetSafeHwnd())) { AfxMessageBox("窗口句柄无效"); return (FALSE); }原创 2008-07-30 19:21:00 · 1928 阅读 · 2 评论 -
递归方式搜索文件
int Find_special_File(LPCTSTR pszPath, //查找起始路径 LPCTSTR pszExt, //文件扩展名 BOOL include_subDirectory, //搜索子目录标志 CListBox *pList) //列表...原创 2008-06-01 21:07:00 · 2218 阅读 · 0 评论 -
给显示窗口添加一个Resizeable的角标
CRect rcGrip; GetClientRect(rcGrip); rcGrip.left = rcGrip.right-GetSystemMetrics(SM_CXVSCROLL); rcGrip.top = rcGrip.bottom-GetSystemMetrics(SM_CYVSCROLL); CDC *pDC = GetDC(); if(!pDC->D原创 2010-04-02 13:22:00 · 1300 阅读 · 0 评论 -
加载BMP文件 并绘制
BOOL LoadBitmapFromBMPFile( LPTSTR szFileName, HBITMAP *phBitmap, HPALETTE *phPalette ){ BITMAP bm; *phBitmap = NULL; *phPalette = NULL; // Use LoadImage() to get the image loaded into a DIBSecti原创 2008-10-25 22:42:00 · 1173 阅读 · 0 评论 -
从文件加载位图
BOOL ImageAnalyse(LPCTSTR szBMP){ //加载文件 HANDLE hBitmap = LoadImage (NULL, szBMP, IMAGE_BITMAP,0, 0, LR_LOADFROMFILE); ASSERT (hBitmap != NULL); //关联到位图 CBitmap m_bitmap; m_b原创 2010-04-18 22:52:00 · 774 阅读 · 0 评论 -
拷贝pWnd指向的窗口的指定区域到剪贴板
//拷贝pWnd指向的窗口的lpSrcRect到剪贴板//运行过此程序,可以打开画图进行粘贴测试CopyScreenToClipboard(CWnd *pWnd, CRect *lpSrcRect){ if(!IsWindow(pWnd->GetSafeHwnd())) { AfxMessageBox("窗口句柄无效"); return (FALSE); }原创 2008-07-30 19:19:00 · 856 阅读 · 0 评论 -
把2进制文件写成ASC HEX文件
void HEX2ASC(BYTE Hex, TCHAR uChar[3]){ //0-F 转换成 '0'-'F' #define BIN2TXT(x) (((x) > 9) ? ((x)-10+_T('A')) : ((x)+_T('0'))) uChar[0] = BIN2TXT(Hex>>4);//高四位 uChar[1] = BIN2TXT(Hex&0x0F原创 2010-10-30 21:25:00 · 1428 阅读 · 0 评论 -
API使指定窗口全屏/恢复全屏
BOOL FullScreenViewCtrl(HWND m_hWnd, //想要全屏的窗口句柄 BOOL bFullScreen) //TURE进入全屏 FALSE退出全屏{ static HWND pParentWndSave = NULL; //父窗口句柄 static DWORD dwWindowStyleSave = 0; //窗原创 2013-04-01 20:58:48 · 2058 阅读 · 0 评论 -
调整窗口尺寸
#include "stdafx.h"BOOL Zoom_Window(HWND hWnd, LPRECT lpTargetRect, LPRECT mOrgRect, BOOL bZoomEx_Only){ if(hWnd) { CRect TaregetEX_Pos = lpTargetRect; BOOL IsVisable = IsWindo原创 2010-04-21 21:18:00 · 678 阅读 · 1 评论