摘要: ImageListCtrl.H#pragma once#define IMAGEPATH _T("appdata\\Image\\")// CImageListCtrlclass CImageListCtrl : public CListCtrl... 阅读全文
posted @ 2011-08-11 15:43 银翼的魔术师 阅读(1761) 评论(0) 推荐(0) 编辑
摘要: if(m_hEventWnd){:: PostMessage(m_hEventWnd,WM_GRPDOWNBEGIN,NET_SHORT(pGroupAck->groupCount),NET_SHOR(pGroupAck->deviceCount));}以上这段代码如果被调用,然后循环调用if(m_... 阅读全文
posted @ 2011-08-11 15:36 银翼的魔术师 阅读(135) 评论(0) 推荐(0) 编辑
摘要: CString strCar;strCar.Format(_T("ID:%s \n單位名稱:%s \n經度:%d \n緯度:%d \n速度:%d"),pci->gpsno,pci->carno,pci->pos.lon,pci->pos.lat,pci->pos.speed);//CString s... 阅读全文
posted @ 2011-08-11 15:35 银翼的魔术师 阅读(250) 评论(0) 推荐(0) 编辑
摘要: public、protected和private继承在C++中继承主要有三种关系:public、protected和private。这三种继承关系中public继承是最为常用的一种继承关系,private继承是最少见的继承关系。1. publicpublic继承是一种接口继承,根据面向对象中的关系而... 阅读全文
posted @ 2011-08-11 15:35 银翼的魔术师 阅读(170) 评论(0) 推荐(0) 编辑
摘要: /*#ifndef WINVER // 指定要求的最低平台是 Windows Vista。#define WINVER 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。#endif#ifndef _WIN32_WINNT // 指定要求的最低平台是 Windows Vista。#define _WIN32_WINNT 0x0600 // 将此值更改为相应的值,以适用于 Windows 的其他版本。#endif这样的话,无法使用气球提示。(NOTIFYICONDATA).dwInfoFlags= NIIF_INFO;Shell_NotifyIcon 之后,没办法弹 阅读全文
posted @ 2011-08-11 15:34 银翼的魔术师 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 如何响应这个颜色选择框的消息呢?需要在DefWindowProc响应BCGM_GRID_ITEM_CHANGED(通过阅读bcg源码可知),让我继续获得这个控件代码如下 elseif(message == BCGM_GRID_ITEM_CHANGED) { //AfxMessageBox(_T("... 阅读全文
posted @ 2011-08-11 15:34 银翼的魔术师 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 代码: //加入顏色選擇 CBCGPGridColorItem* pColorItem = new CBCGPGridColorItem ( RGB (255, 0, 0)); ASSERT_VALID (pColorItem); pColorItem->EnableOtherButton (_T("Other")); pRow->ReplaceItem (0, pColorItem); m_Grid.AddRow (pRow, FALSE);不过不能把CBCGPGridCtrl设为只读的 不然颜色选择失效 阅读全文
posted @ 2011-08-11 15:33 银翼的魔术师 阅读(1055) 评论(0) 推荐(0) 编辑
摘要: CIPAddressCtrl m_ipCtrl;。。。 DDX_Control(pDX, IDC_IPADDRESS2, m_ipCtrl);。。。void CIPDlg::OnBnClickedOk(){ // TODO: 在此添加控件通知处理程序代码 DWORD dIp; m_ipCtrl.GetAddress(dIp); BYTE *pIp = (BYTE*)&dIp; CString str; str.Format(_T("%d.%d.%d.%d"),pIp[0],pIp[1],pIp[2],pIp[3]); AfxMessageBox(str); OnOK 阅读全文
posted @ 2011-08-11 15:31 银翼的魔术师 阅读(177) 评论(0) 推荐(0) 编辑
摘要: SQLite中如何用api操作blob类型的字段在实际的编程开发当中我们经常要处理一些大容量二进制数据的存储,如图片或者音乐等等。对于这些二进制数据(blob字段)我们不能像处理普通的文本那样简单的插入或者查询,为此SQLite提供了一组函数来处理这种BLOB字段类型。下面的代码演示了如何使用这些API函数。首先我们要建立一个数据库:sqlite3_exec(db, "CREATE TABLE list (fliename varchar(128) UNIQUE, fzip blob);", 0, 0, &zErrMsg);//由于mmmm.rar是一个二进制文件, 阅读全文
posted @ 2011-08-11 15:31 银翼的魔术师 阅读(769) 评论(0) 推荐(0) 编辑
摘要: PGresult *res; m_conn = PQsetdbLogin("127.0.0.1","5432","","","postgres","postgres","123"); PQsetClientEncoding(m_conn,"GBK"); if (PQstatus(m_conn) != CONNECTION_OK) { CString strErr; strErr.Format(_T("连接数据库失败 [%s]& 阅读全文
posted @ 2011-08-11 15:30 银翼的魔术师 阅读(328) 评论(0) 推荐(0) 编辑
摘要: PGresult *res; m_conn = PQsetdbLogin("127.0.0.1","5432","","","postgres","postgres","123"); PQsetClientEncoding(m_conn,"GBK"); if (PQstatus(m_conn) != CONNECTION_OK) { CString strErr; strErr.Format(_T("连接数据库失败 [%s]& 阅读全文
posted @ 2011-08-11 15:29 银翼的魔术师 阅读(805) 评论(0) 推荐(0) 编辑
摘要: if(m_adoConnection.IsOpen()) m_adoConnection.Close(); if(!m_adoConnection.ConnectPostSql(_T("postgres"),_T("123"),_T("postgres"),_T("127.0.0.1"),5432)) { AfxMessageBox(_T("访问数据库失败!")); return; } if(!m_adoConnection.IsOpen()) { AfxMessageBox(_T(" 阅读全文
posted @ 2011-08-11 15:28 银翼的魔术师 阅读(969) 评论(0) 推荐(0) 编辑
摘要: STDMETHODIMP CMXRender::FillPolygon(VARIANT pts,LONG* res){ // TODO: 在此添加实现代码 if(pts.vt != (VT_ARRAY|VT_DISPATCH) ||m_GeoRender == NULL) return S_FALSE; LPSAFEARRAY parr = pts.parray; LONG count = 0; if(SafeArrayGetDim(parr) == 1 &&SafeArrayGetUBound(parr, 1, &count) == S_OK) { PointF *p 阅读全文
posted @ 2011-08-11 15:27 银翼的魔术师 阅读(513) 评论(0) 推荐(0) 编辑
摘要: VARIANT data; SAFEARRAY* sa; sa=::SafeArrayCreateVector(VT_VARIANT,0,nDataLen); for (int i=0;i<nDataLen;i++) { if(::SafeArrayPutElement(sa,(LONG *)&i,(void*)&CComVariant(pData[i]))!=S_OK) { return FALSE; } } ::VariantClear(&data); ::VariantInit(&data); data.vt=VT_ARRAY|VT_VARIANT; 阅读全文
posted @ 2011-08-11 15:27 银翼的魔术师 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 可以继承重写OnPropertyChanged,但是我感觉没大必要啊,所以用消息响应来做LRESULT OnPropertyChanged (WPARAM,LPARAM lParam); ON_REGISTERED_MESSAGE(BCGM_PROPERTY_CHANGED, OnPropertyChanged)LRESULT CPropertyBar::OnPropertyChanged (WPARAM,LPARAM lParam){ switch ((int) pProp->GetData ()) { case .... }}网上说的是通过pProp->GetData()来取得 阅读全文
posted @ 2011-08-11 15:25 银翼的魔术师 阅读(562) 评论(0) 推荐(0) 编辑
摘要: 读DWORD WINAPI ReINI(LPCSTR key,LPCSTR data,LPSTR result){ char pathstr[_MAX_PATH]; memset(pathstr,0,sizeof(pathstr)); ::GetAppDir(pathstr); ::strcat(pathstr,"Config.ini"); return ::GetPrivateProfileString(key,data,NULL,result,1024,pathstr);}写 char pathstr[_MAX_PATH]; memset(pathstr,0,sizeo 阅读全文
posted @ 2011-08-11 15:23 银翼的魔术师 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2011-08-11 15:23 银翼的魔术师 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 这是VB下运行控件的程序,很有成就感,com方面也学到很多 阅读全文
posted @ 2011-08-11 15:21 银翼的魔术师 阅读(83) 评论(0) 推荐(0) 编辑
摘要: idl文件相应位置写入 typedef [uuid(1B314975-2FCB-4903-BB1A-917EB8E639E4), version(1.0)] struct Struct_A { long x; long y; } Struct_A ;也就是说导出的结构体也必须有uuid 阅读全文
posted @ 2011-08-11 15:19 银翼的魔术师 阅读(211) 评论(0) 推荐(0) 编辑
摘要: String str(newVal); int count = str.size(); if(count>31) { count = 31; } wcsncpy(m_info.faceName,str.c_str(),count); m_info.faceName[count] = _T('\0'); 阅读全文
posted @ 2011-08-11 15:18 银翼的魔术师 阅读(271) 评论(0) 推荐(0) 编辑