亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? menulistctrl.cpp

?? WinCE 下實現Listctrl自畫
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
			SetRedraw(TRUE);
			UpdateWindow();
			Invalidate();
		}
	}	
	return CListCtrl::OnNotify(wParam, lParam, pResult);

}


void CMenuListCtrl::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	CListCtrl::OnKeyDown(nChar, nRepCnt, nFlags);
}

void CMenuListCtrl::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
	CListCtrl::OnKeyUp(nChar, nRepCnt, nFlags);
}


void CMenuListCtrl::OnTimer(UINT nIDEvent) 
{
	// TODO: Add your message handler code here and/or call default
//	if ( 0x2B == nIDEvent )  InvalidateRect( FALSE );

	CListCtrl::OnTimer(nIDEvent);
}


void CMenuListCtrl::LineDown()
{
	SendMessage( WM_VSCROLL, MAKELONG(SB_PAGEDOWN,0), NULL); 
}

void CMenuListCtrl::InitVScroll()
{
	CWnd* pParent = GetParent();

	PositionScrollBars();
}

void CMenuListCtrl::PositionScrollBars()
{
	CWnd* pParent = GetParent();
	
	CRect windowRect;
	GetWindowRect(&windowRect);
	
	int nTitleBarHeight = 0;
	
	if(pParent->GetStyle() & WS_CAPTION)
		nTitleBarHeight = GetSystemMetrics(31);
	
	
	int nDialogFrameHeight = 0;
	int nDialogFrameWidth = 0;
	if((pParent->GetStyle() & WS_BORDER))
	{
		nDialogFrameHeight = GetSystemMetrics(SM_CYDLGFRAME);
		nDialogFrameWidth = GetSystemMetrics(SM_CYDLGFRAME);
	}
	
	if(pParent->GetStyle() & WS_THICKFRAME)
	{
		nDialogFrameHeight+=1;
		nDialogFrameWidth+=1;
	}
	
	pParent->ScreenToClient(&windowRect);

	windowRect.top+=nTitleBarHeight+nDialogFrameHeight;
	windowRect.bottom+=nTitleBarHeight+nDialogFrameHeight;
	windowRect.left +=nDialogFrameWidth;
	windowRect.right+=nDialogFrameWidth;

	CRect vBar(windowRect.right-nDialogFrameWidth,windowRect.top-nTitleBarHeight-nDialogFrameHeight,windowRect.right+12-nDialogFrameWidth,windowRect.bottom+12-nTitleBarHeight-nDialogFrameHeight);
	CRect hBar(windowRect.left-nDialogFrameWidth,windowRect.bottom-nTitleBarHeight-nDialogFrameHeight,windowRect.right+1-nDialogFrameWidth,windowRect.bottom+12-nTitleBarHeight-nDialogFrameHeight);
	
}




void CMenuListCtrl::OnSize(UINT nType, int cx, int cy) 
{
 	//隱藏垂直滾動條  
 	ShowScrollBar(SB_VERT,   FALSE);

	EnableScrollBarCtrl(SB_HORZ,FALSE);   
	EnableScrollBarCtrl(SB_VERT,FALSE);   

	CScrollBar * pBar = GetScrollBarCtrl(SB_VERT);//SB_VERT
	if(pBar)
	{
		pBar->ShowWindow(SW_HIDE);
		::AfxMessageBox(_T(""));
	}
	CListCtrl::OnSize(nType, cx, cy);		
}

void CMenuListCtrl::HideScrollBars(int Type, int Which)
{
	if(Type==LCSB_CLIENTDATA) //This is the clientrect function
	{
		RECT ierect;
		int cxvs, cyvs;
		GetClientRect(&ierect); //Get client width and height
		
		cxvs = GetSystemMetrics (SM_CXVSCROLL); //Get the system metrics - VERT
		cyvs = GetSystemMetrics (SM_CYVSCROLL); //Get the system metrics - HORZ
		
		if(Which==SB_HORZ) cxvs=0; //Set VERT to zero when choosen HORZ
		if(Which==SB_VERT) cyvs=0; //Set HORZ to zero when choosen VERT
		
		//Here we set the position of the window to the clientrect + the size of the scrollbars
		SetWindowPos(NULL, ierect.left, ierect.top, ierect.right+cxvs, ierect.bottom+cyvs, SWP_NOMOVE | SWP_NOZORDER);
		
		//Her we modify the rect so the right part is subbed from the rect.
		if(Which==SB_BOTH||Which==SB_HORZ) ierect.bottom -= ierect.top;
		if(Which==SB_BOTH||Which==SB_VERT) ierect.right -= ierect.left;
		
		//Just to be safe that the left/top corner is 0...
		ierect.top = 0;
		ierect.left = 0;
		
		HRGN iehrgn = NULL; //This range is created base on which scrollbar that is going to be removed!
		
		//The -2 is probably a border of some kind that we also need to remove. I could not find any good
		//metrics that gave me an 2 as an answer. So insted we makes it static with -2.
		if(Which==SB_BOTH) iehrgn=CreateRectRgn (ierect.left, ierect.top, ierect.right, ierect.bottom-1);
		if(Which==SB_HORZ) iehrgn=CreateRectRgn (ierect.left, ierect.top, ierect.right, ierect.bottom+2);
		if(Which==SB_VERT) iehrgn=CreateRectRgn (ierect.left, ierect.top, ierect.right-2, ierect.bottom);
		
		//After the range has been made we add it...
		SetWindowRgn (iehrgn, TRUE);
		
		//Reset of NCOverride
		NCOverride=FALSE;
	}
	
	if(Type==LCSB_NCOVERRIDE) //This is the NcCalcSize override
	{
		NCOverride=TRUE; //Set to true, so we run the code on each OnNcCalcSize.
		Who=Which; //Selects which scrollbars to get hidden.
	}
}

LRESULT CMenuListCtrl::OnSetFont(WPARAM wParam, LPARAM lParam)
{
	CRect rc;
	GetWindowRect(&rc);

	WINDOWPOS wp;
	wp.hwnd = this->m_hWnd;
	wp.cx = rc.Width() ;
	wp.cy = rc.Height() ;
	wp.flags = SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOOWNERZORDER | SWP_NOZORDER;

	LRESULT lrReturn(Default());

	SendMessage(WM_WINDOWPOSCHANGED, 0, reinterpret_cast<LPARAM> (&wp));

	return lrReturn;
}

void CMenuListCtrl::MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct) 
{
	// Get the LOGFONT for the current font.
	LOGFONT lf;
	::ZeroMemory(&lf, sizeof(lf));

	CFont* pFont = GetFont();
	ASSERT_VALID(pFont);
	
	if (pFont) 
		VERIFY(pFont->GetLogFont(&lf));

	int nAdj(0) ;
	m_nLinesPerRow = max(m_nLinesPerRow, 1);

	if (lf.lfHeight < 0) 
		lpMeasureItemStruct->itemHeight = lf.lfHeight+36/*((-lf.lfHeight+nAdj) * (m_nLinesPerRow))*/;
	else 
		lpMeasureItemStruct->itemHeight = lf.lfHeight+10/*((lf.lfHeight+nAdj) * (m_nLinesPerRow))*/;
}

void CMenuListCtrl::OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct) 
{
	CListCtrl::OnMeasureItem(nIDCtl, lpMeasureItemStruct);
}

void CMenuListCtrl::OnInitialUpdate() 
{
	// Insert Header columns
	int i;
	LV_COLUMN lvc;
	lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;

	for(i = 0; i<1; i++)
	{
		lvc.iSubItem = i;
		lvc.pszText = _gmszColumnLabel[i];
		lvc.cx = _gmnColumnWidth[i];
		lvc.fmt = _gmnColumnFmt[i];
		InsertColumn(i,&lvc);
	}

	m_nLinesPerRow = 2;

	if ( m_nLinesPerRow > 1 ) 
	{
		m_NewListFont.CreatePointFont(132,_T("MS Serif"));
	}
	m_NewFont.CreatePointFont(128,_T("宋體"));

	
}

void CMenuListCtrl::SubclassHeaderControl()
{
	if (m_bHeaderIsSubclassed)
		return;
	CHeaderCtrl* pHeader = GetHeaderCtrl();
	if (pHeader)
	{
		VERIFY(m_HeaderCtrl.SubclassWindow(pHeader->m_hWnd));
		m_bHeaderIsSubclassed = TRUE;
	}
}

void CMenuListCtrl::PreSubclassWindow() 
{
	// TODO: Add your specialized code here and/or call the base class
	
	CListCtrl::PreSubclassWindow();
	SubclassHeaderControl();
}

int CMenuListCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CListCtrl::OnCreate(lpCreateStruct) == -1)
	{
		ASSERT(FALSE);
		return -1;
	}
	
	// TODO: Add your specialized creation code here
	SubclassHeaderControl();
	return 0;
}
/************************************************************************/
/* 
函數名稱: PaintIconByFilePath
函數功能: 根據文件后綴名稱畫文件顯示圖標
函數參數: 
    CDC *pDC——目標DC
	LPCRECT rcItem——圖標位置
	CDC *pSrcDC——源DC
	LPCTSTR pstrName——判斷文件名稱后綴:
	    1、EXE——各個小應用、游戲
		2、空——文件夾
		3、BMP、JPG、GIF——圖片
		4、MP3、WMA——音頻播放器
		5、MP4、AVI——視頻播放器
函數返回: 無
其他說明: 對于無法識別的圖標未作操作
*/
/************************************************************************/
void CMenuListCtrl::PaintIconByFilePath(CDC *pDC,LPCRECT rcItem, CDC *pSrcDC,LPCTSTR pstrName)
{
	CString m_csRoot;
	m_csRoot = pstrName;
	int nPos = m_csRoot.ReverseFind('.');
	if(nPos == -1)
	{
		m_csRoot = '\\';
	}
	else
	{
		m_csRoot = m_csRoot.Right(m_csRoot.GetLength()-nPos-1);
	}

	if (m_csRoot==_T("mp4"))//音頻播放
	{
		TransparentBlt(pDC->m_hDC,rcItem->left+4,rcItem->top+7,17,16,
			pSrcDC->m_hDC,35,0,17,16,RGB(255,0,255));
	}
	else
		if (m_csRoot == '\\')//文件夾
		{
			TransparentBlt(pDC->m_hDC,rcItem->left+4,rcItem->top+7,17,16,
				pSrcDC->m_hDC,85,0,17,16,RGB(255,0,255));
		}
		else
			if (m_csRoot== _T("txt"))//電子書
			{
				TransparentBlt(pDC->m_hDC,rcItem->left+4,rcItem->top+7,17,16,
					pSrcDC->m_hDC,69,0,17,16,RGB(255,0,255));
			}
			else
				if (m_csRoot== _T("jpg")||m_csRoot== _T("bmp")||m_csRoot== _T("gif"))//電子書
				{
					TransparentBlt(pDC->m_hDC,rcItem->left+4,rcItem->top+7,17,16,
						pSrcDC->m_hDC,0,0,17,16,RGB(255,0,255));
				}
				else
					if (m_csRoot== _T("exe"))//電子書??相關應用程序的識別
					{
						TransparentBlt(pDC->m_hDC,rcItem->left+4,rcItem->top+7,17,16,
							pSrcDC->m_hDC,18,0,17,16,RGB(255,0,255));
					}
}

CString CMenuListCtrl::GetFileNameFromPath(LPCTSTR path)
{
	CString m_csRoot;
	m_csRoot = path;
	int nPos = m_csRoot.ReverseFind('\\');
	if(nPos == -1)
	{
		m_csRoot = '\\';
	}
	else
	{
		m_csRoot = m_csRoot.Right(m_csRoot.GetLength()-nPos-1);
	}
	return m_csRoot;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲444eee在线观看| 91精品啪在线观看国产60岁| 九一久久久久久| 天堂在线亚洲视频| 亚洲高清免费观看 | 国产精品免费看片| 26uuu国产一区二区三区| 欧美一级久久久| 日韩欧美三级在线| 久久久久久久综合日本| 国产精品视频免费| 一区二区三区免费| 亚洲国产一二三| 久久精品99国产精品| 国产精品一区二区男女羞羞无遮挡| 国产精品99久| 99re这里都是精品| 欧美欧美欧美欧美首页| 欧美电视剧免费全集观看| 久久久www成人免费毛片麻豆| 国产欧美一区视频| 伊人一区二区三区| 免费高清不卡av| 国产酒店精品激情| 欧美亚洲国产怡红院影院| 欧美一区在线视频| 久久亚洲一区二区三区明星换脸| 亚洲国产成人自拍| 亚洲va中文字幕| 成人一区二区三区在线观看| 欧美亚洲精品一区| 国产亲近乱来精品视频| 亚洲国产成人高清精品| 国产在线乱码一区二区三区| aaa国产一区| 欧美成va人片在线观看| 亚洲精选在线视频| 激情综合亚洲精品| 色视频欧美一区二区三区| 精品日韩在线观看| 亚洲综合丁香婷婷六月香| 极品美女销魂一区二区三区 | 久久精品亚洲麻豆av一区二区| 亚洲欧洲综合另类在线| 精品无人码麻豆乱码1区2区| 欧美午夜精品久久久| 久久免费美女视频| 日韩一区精品字幕| 99在线精品免费| 国产亚洲欧美一区在线观看| 午夜精品视频在线观看| 99久久免费视频.com| 精品日韩av一区二区| 亚洲成人av在线电影| 不卡一区二区中文字幕| 久久久久亚洲综合| 日韩1区2区日韩1区2区| 色综合久久88色综合天天 | 99精品久久免费看蜜臀剧情介绍| 日韩一区二区三区观看| 五月婷婷综合在线| 欧美性高清videossexo| 中文字幕一区二区三区在线播放| 国产一区在线精品| 2020国产精品| 国产一区二区三区免费看| 日韩欧美一区在线| 日韩电影一区二区三区四区| 91福利在线免费观看| 一区二区三区四区中文字幕| 99久久er热在这里只有精品15 | 欧美一级高清大全免费观看| 一区二区三区鲁丝不卡| 91在线播放网址| 国产精品精品国产色婷婷| 国产成人在线看| 欧美高清一级片在线观看| 国产成人免费av在线| 国产精品18久久久久久久久| 日韩一区二区在线观看| 亚洲成年人网站在线观看| 久久夜色精品国产噜噜av| 欧美视频一区二区三区| 精品国产免费一区二区三区四区 | 日韩精品1区2区3区| 欧美精品九九99久久| 日韩av电影天堂| 日韩精品一区二区三区中文精品| 麻豆91精品91久久久的内涵| 日韩免费高清电影| 激情综合网av| 国产精品欧美极品| 欧美伊人久久久久久午夜久久久久| 一区二区三区日韩在线观看| 91精品国产欧美日韩| 国产一区二区精品久久91| 国产日产欧美一区二区三区| 97久久人人超碰| 亚洲成a人片综合在线| 欧美一区二区三区在线| 国产一区二区91| 亚洲男人都懂的| 欧美久久婷婷综合色| 九一久久久久久| 日韩一区在线免费观看| 91精品国产91热久久久做人人| 国模少妇一区二区三区| 国产精品久久久久影院色老大| 欧美优质美女网站| 国产剧情一区在线| 亚洲乱码国产乱码精品精小说 | 国产一区不卡视频| 亚洲欧美综合在线精品| 欧美日韩国产综合草草| 国产老妇另类xxxxx| 亚洲午夜成aⅴ人片| 久久精品欧美一区二区三区不卡| 色偷偷成人一区二区三区91| 麻豆91小视频| 五月综合激情网| 国产精品久久久99| 日韩女优制服丝袜电影| 一本色道亚洲精品aⅴ| 国产在线精品一区二区| 日韩主播视频在线| 综合在线观看色| 国产夜色精品一区二区av| 欧美精品一二三区| 色妞www精品视频| 成人性生交大片免费| 国产在线麻豆精品观看| 日韩中文字幕麻豆| 一区二区三区四区五区视频在线观看 | 国产亚洲精品精华液| 91精品国产综合久久久久久| 91在线观看美女| 成人午夜视频网站| 高清成人免费视频| 国产一区美女在线| 狠狠色丁香久久婷婷综| 首页国产欧美久久| 亚洲国产成人91porn| 一区二区欧美国产| 亚洲精品日韩一| 国产精品萝li| 亚洲欧洲国产日本综合| 国产精品水嫩水嫩| 欧美国产亚洲另类动漫| 久久精品在这里| 久久精品视频在线看| 国产无一区二区| 中文字幕的久久| 日本一区二区免费在线 | 93久久精品日日躁夜夜躁欧美| 成人综合婷婷国产精品久久蜜臀| 极品少妇xxxx精品少妇| 激情久久五月天| 韩国中文字幕2020精品| 国产福利一区在线| 成人免费视频一区| 成人av午夜影院| 99国产欧美另类久久久精品| 91麻豆精品视频| 在线欧美日韩精品| 欧美高清一级片在线| 日韩欧美国产小视频| 2021久久国产精品不只是精品 | 色哦色哦哦色天天综合| 欧美亚洲动漫精品| 欧美大尺度电影在线| 久久综合色婷婷| 成人免费在线观看入口| 亚洲国产综合色| 久久精品国产久精国产| 国产99久久久精品| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 亚洲成人一二三| 麻豆精品视频在线| 99久精品国产| 日韩一区二区三区四区| 国产欧美一区二区在线| 亚洲国产人成综合网站| 精品制服美女久久| 97久久久精品综合88久久| 在线91免费看| 国产精品久久久久国产精品日日| 亚洲一区二区三区在线播放| 六月丁香婷婷色狠狠久久| 波多野结衣中文字幕一区| 9191久久久久久久久久久| 中文字幕不卡在线观看| 五月婷婷久久丁香| 成人激情动漫在线观看| 91精品在线免费| 中文字幕综合网| 国产在线视视频有精品| 欧美精品视频www在线观看 | 91理论电影在线观看| 欧美videos中文字幕| 亚洲一区视频在线|