VC杂项

2008-02-23 05:34:56来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

1、控件随窗口大小而自动缩放
void CDVRDlg::OnSize(UINT nType, int cx, int cy)
{
RECT rcClient;
if (GetDlgItem(IDC_STATIC_aa))
{
GetClientRect(&rcClient);
rcClient.left =10;
rcClient.right-=10;
rcClient.top =10;
rcClient.bottom-=10;
GetDlgItem(IDC_STATIC_aa)->MoveWindow(&rcClient);
}
}

2、CButtonST

Short shBtnColor = 30;
m_bGogo.SetIcon(IDI_HALLOWEEN2, IDI_HALLOWEEN1);//配置按钮图标
m_bGogo.OffsetColor(CButtonST::BTNST_COLOR_BK_IN, shBtnColor);//配置按钮亮度
m_bGogo.DrawBorder(FALSE);//配置按钮边框
m_bGogo.SetColor(CButtonST::BTNST_COLOR_FG_IN, RGB(0, 128, 0));//配置按钮字体颜色
m_bGogo.SetAlign(CButtonST::ST_ALIGN_HORIZ_RIGHT);//配置按钮图标位置
m_bGogo.DrawFlatFocus(TRUE);//配置虚线框

// HyperLink button
m_btnHyperLink.SetIcon(IDI_WEB2);
m_btnHyperLink.OffsetColor(CButtonST::BTNST_COLOR_BK_IN, shBtnColor);
m_btnHyperLink.SetURL(IDS_WEBADDR);
m_btnHyperLink.SetTooltipText(IDS_WEBADDR);
m_btnHyperLink.SetBtnCursor(IDC_HAND2);

3、解析字符串
CString a = "aaa,sss,ddd,fff";
CString b[100000];
int bb = 0;
for ( int i=0; i<a.GetLength(); i )
if ( a[i]==',' )
{
bb ;
}
else
{
b[bb] = b[bb] a[i];
}

4、取得本地IP
char name[255];
CString ip;
PHOSTENT hostinfo;
if(gethostname ( name, sizeof(name)) == 0)
{
//假如能够获取电脑主机信息的话,则获取本机IP地址
if ((hostinfo = gethostbyname(name)) != NULL)
{
//获取本机IP地址
LPCSTR ip=inet_ntoa(*(struct in_addr*)*hostinfo->h_addr_list);
//输出IP地址
AfxMessageBox(ip);
}
}

5、类似CTabCtrl的CPropertySheet

m_PropertySheet.AddPage(&page1);
m_PropertySheet.AddPage(&page2);

//m_PropertySheet.SetActivePage(&page2);
m_PropertySheet.Create(this, WS_CHILD | WS_VISIBLE, 0); //创建非摸态

的属性表
m_PropertySheet.ModifyStyleEx (0, WS_EX_CONTROLPARENT); // 当对话框

搜索下一 个Tab项时,WS_EX_CONTROLPARENT标记避免了死循环发生的可

能性,他能够让对话框搜索到属性表中的子窗体控件,就象对话框窗体上的其他普通控件相同
m_PropertySheet.ModifyStyle( 0, WS_TABSTOP ); //允许用户TAB键转换到属性表


CRect rcRect;
GetWindowRect(&rcRect);
m_PropertySheet.MoveWindow(rcRect);

6、不要一次发那么大,分成1K大小,循环发送,检查每次发送的返回值
#define SOCK_BUF 1024
DWORD dwSend = 0;
DWORD dwToSend = 0;
while(dwSend < dwDataLen)
{
dwToSend = dwDataLen - dwSend;
if(dwToSend > SOCK_BUF) dwToSend = SOCK_BUF;
int nRet = m_pSockMsg->Send(pDataBuf dwSend,dwToSend);
if(nRet == SOCKET_ERROR)
{
DWORD dwError = GetLastError();
CString str;
str.Format("发送错误,错误代码:%d",dwError);
AfxMessageBox(str);
break;
}
dwSend = nRet;
}

7、工具条图标
// Set up hot bar image lists.
CImageList imageList;
CBitmap bitmap;

// Create and set the normal toolbar image list.
bitmap.LoadBitmap(IDB_TOOLBAR);
imageList.Create(29, 29, ILC_COLORDDB|ILC_MASK, 13, 1);
imageList.Add(&bitmap, RGB(255,0,255));
m_wndToolBar.SendMessage(TB_SETIMAGELIST, 0, (LPARAM)imageList.m_hImageList);
imageList.Detach();
bitmap.Detach();

// Create and set the hot toolbar image list.
bitmap.LoadBitmap(IDB_TOOLBARHOT);
imageList.Create(29, 29, ILC_COLORDDB|ILC_MASK, 13, 1);
imageList.Add(&bitmap, RGB(255,0,255));
m_wndToolBar.SendMessage(TB_SETHOTIMAGELIST, 0, (LPARAM)imageList.m_hImageList);
imageList.Detach();
bitmap.Detach();

// Create and set the hot toolbar image list.
bitmap.LoadBitmap(IDB_TOOLBARDISABLE);
imageList.Create(29, 29, ILC_COLORDDB|ILC_MASK, 13, 1);
imageList.Add(&bitmap, RGB(255,0,255));
m_wndToolBar.SendMessage(TB_SETDISABLEDIMAGELIST, 0, (LPARAM)imageList.m_hImageList);
imageList.Detach();
bitmap.Detach();

8、bmp位图
1位 2种颜色
2位 4种颜色
4位 16种颜色
8位 256种颜色
16位 65536种颜色
24位 1677万种颜色
32位 1677万种颜色和256级灰度值
36位 687亿种颜色和4096级灰度值

9、贴图
m_bmpBackground.LoadBitmap(IDB_MAINWND);
BITMAP bmp;
if (m_bmpBackground.GetBitmap(&bmp))
{
SIZE sizeWnd = {bmp.bmWidth, bmp.bmHeight};
sizeWnd.cx = GetSystemMetrics(SM_CXBORDER) * 2;
sizeWnd.cy = GetSystemMetrics(SM_CYBORDER) * 2 GetSystemMetrics(SM_CYCAPTION);

SetWindowPos(NULL, 0, 0, sizeWnd.cx, sizeWnd.cy, SWP_NOMOVE | SWP_NOZORDER);
CenterWindow();
}


10、//-----------返回符合条件的记录总数----------------------------
int CTreeDataDlg::TreeSumRecordCount(CString strFieldValue)
{
int Sum=0;
//----------------使用到的变量进行定义----------
_RecordsetPtr m_pRecordset; //用于创建一个查询记录集

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 函数调用的传值和“传址”

下一篇: 指针, 指针的指针, 数组, 指针数组, 数组指针, 指针函数, 函数