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

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

?? listctrltestdlg.cpp

?? EVC寫的ListCtrl擴展控件
?? CPP
字號:
// ListCtrlTestDlg.cpp : implementation file
//

#include "stdafx.h"
#include "ListCtrlTest.h"
#include "ListCtrlTestDlg.h"

#include "NewItemDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CListCtrlTestDlg dialog

CListCtrlTestDlg::CListCtrlTestDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CListCtrlTestDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CListCtrlTestDlg)
	m_strSelItem = _T("Current selected item: -");
	//}}AFX_DATA_INIT
	// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CListCtrlTestDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CListCtrlTestDlg)
	DDX_Control(pDX, IDC_LIST1, m_ctrlList);
	DDX_Text(pDX, IDC_STATIC1, m_strSelItem);
	DDX_Control(pDX, IDC_ADD, m_btnAdd);
    DDX_Control(pDX, IDC_DEL, m_btnDel);
    DDX_Control(pDX, IDC_UP, m_btnUp);
    DDX_Control(pDX, IDC_DOWN, m_btnDown);
    DDX_Control(pDX, IDC_TOP, m_btnTop);
    DDX_Control(pDX, IDC_BOTTOM, m_btnBottom);
	//}}AFX_DATA_MAP
}

BEGIN_MESSAGE_MAP(CListCtrlTestDlg, CDialog)
	//{{AFX_MSG_MAP(CListCtrlTestDlg)
	ON_NOTIFY(LVN_ITEMCHANGED, IDC_LIST1, OnItemChangedList1)
    ON_WM_LBUTTONDOWN()
    ON_NOTIFY_REFLECT(NM_RECOGNIZEGESTURE, OnRecognizeGesture)
    ON_WM_CTLCOLOR()
    ON_BN_CLICKED(IDC_ADD, OnBtnAdd)
    ON_BN_CLICKED(IDC_DEL, OnBtnDel)
    ON_BN_CLICKED(IDC_UP, OnBtnUp)
    ON_BN_CLICKED(IDC_DOWN, OnBtnDown)
    ON_BN_CLICKED(IDC_TOP, OnBtnTop)
    ON_BN_CLICKED(IDC_BOTTOM, OnBtnBottom)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CListCtrlTestDlg message handlers

BOOL CListCtrlTestDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// Set the icon for this dialog.  The framework does this automatically
	//  when the application's main window is not a dialog
	SetIcon(m_hIcon, TRUE);			// Set big icon
	SetIcon(m_hIcon, FALSE);		// Set small icon

	CenterWindow(GetDesktopWindow());	// center to the hpc screen

	// TODO: Add extra initialization here

    // Calculate a color effect for hilighting the button
    COLORREF crBtnColor = ::GetSysColor(COLOR_BTNFACE) + RGB(30, 30, 30);

	// Add button
	m_btnAdd.SetFont(GetFont());
	m_btnAdd.SetIcon(IDI_ADD, CSize(16, 16));
	m_btnAdd.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnAdd.SetRounded(TRUE);

	// Delete button
	m_btnDel.SetFont(GetFont());
	m_btnDel.SetIcon(IDI_DEL, CSize(16, 16), IDI_DEL, CSize(16, 16),
		IDI_DEL_DISABLED, CSize(16, 16));
	m_btnDel.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnDel.SetRounded(TRUE);

	// Up button
	m_btnUp.SetFont(GetFont());
	m_btnUp.SetIcon(IDI_UP, CSize(16, 16), IDI_UP, CSize(16, 16),
		IDI_UP_DISABLED, CSize(16, 16));
	m_btnUp.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnUp.SetRounded(TRUE);

	// Down button
	m_btnDown.SetFont(GetFont());
	m_btnDown.SetIcon(IDI_DOWN, CSize(16, 16), IDI_DOWN, CSize(16, 16),
		IDI_DOWN_DISABLED, CSize(16, 16));
	m_btnDown.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnDown.SetRounded(TRUE);

	// Top button
	m_btnTop.SetFont(GetFont());
	m_btnTop.SetIcon(IDI_TOP, CSize(16, 16), IDI_TOP, CSize(16, 16),
		IDI_TOP_DISABLED, CSize(16, 16));
	m_btnTop.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnTop.SetRounded(TRUE);

	// Bottom button
	m_btnBottom.SetFont(GetFont());
	m_btnBottom.SetIcon(IDI_BOTTOM, CSize(16, 16), IDI_BOTTOM, CSize(16, 16),
		IDI_BOTTOM_DISABLED, CSize(16, 16));
	m_btnBottom.SetColor(CCeButtonST::BTNST_COLOR_BK_IN, crBtnColor);
	m_btnBottom.SetRounded(TRUE);

    // Create a image list and assign it to the list control
	VERIFY(m_imageList.Create(IDB_BITMAP1, 16, 1, RGB(255, 0, 255)));
	m_ctrlList.SetImageList(&m_imageList, LVSIL_SMALL);

    // Insert some sample items
    for (int n = 0; n < 10; n++)
    {
        CString str;
        str.Format(_T("Item %d"), n);
        m_ctrlList.InsertItem(n, str, n % 8);
    }

  	// Set the focus to the first item in the list control
	if (m_ctrlList.GetItemCount() > 0)
	{
	    m_ctrlList.SetCurSelItem(0);
        ASSERT(m_ctrlList.GetCurSelItem() == 0);
	}

	// Update the list control buttons
    UpdateListCtrlBtns();

	return TRUE;  // return TRUE unless you set the focus to a control
}

void CListCtrlTestDlg::UpdateListCtrlBtns()
{
    // Get the current selected item of the list control
    int nIndex = m_ctrlList.GetCurSelItem();

    // Enable / disable the buttons
    m_btnAdd.EnableWindow(TRUE);
    m_btnDel.EnableWindow(nIndex >= 0 && nIndex < m_ctrlList.GetItemCount());
    m_btnUp.EnableWindow(nIndex >= 1 && nIndex < m_ctrlList.GetItemCount());
    m_btnDown.EnableWindow(nIndex >= 0 && nIndex < m_ctrlList.GetItemCount() - 1);
    m_btnTop.EnableWindow(nIndex >= 1 && nIndex < m_ctrlList.GetItemCount());
    m_btnBottom.EnableWindow(nIndex >= 0 && nIndex < m_ctrlList.GetItemCount() - 1);
}

void CListCtrlTestDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
    Default(); // call default message handler
}

void CListCtrlTestDlg::OnRecognizeGesture(NMHDR* pNMHDR, LRESULT* pResult)
{
    *pResult = TRUE; // cancel the red dot animation
}

HBRUSH CListCtrlTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	// TODO: Change any attributes of the DC here

	// TODO: Return a different brush if the default is not desired

    if (nCtlColor == CTLCOLOR_STATIC)
    {
        pDC->SetBkMode(TRANSPARENT);

        hbr = CreateSolidBrush(::GetSysColor(COLOR_BTNFACE));
    }
    else if (pWnd == this)
    {
        hbr = CreateSolidBrush(::GetSysColor(COLOR_BTNFACE));
    }

	return hbr;
}

void CListCtrlTestDlg::OnItemChangedList1(NMHDR* pNMHDR, LRESULT* pResult)
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*) pNMHDR;

	// TODO: Add your control notification handler code here

    UpdateListCtrlBtns(); // Update the list control buttons

	m_strSelItem.Format(_T("Current selected item: %d"), m_ctrlList.GetCurSelItem());
	UpdateData(FALSE);

	*pResult = 0;
}

void CListCtrlTestDlg::OnBtnAdd()
{
    // TODO: Add your control notification handler code here

    CNewItemDlg dlg(m_imageList.GetImageCount() - 1);

    if (dlg.DoModal() == IDOK)
    {
        int n = m_ctrlList.GetItemCount();

        // Add a new item to the list control
        m_ctrlList.InsertItem(n, dlg.m_strCaption, dlg.m_nImage);

        // Set the current selected item
        m_ctrlList.SetCurSelItem(n);
        ASSERT(m_ctrlList.GetCurSelItem() == n);
    }

    UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

void CListCtrlTestDlg::OnBtnDel()
{
	// TODO: Add your control notification handler code here

    int nIndex = m_ctrlList.GetCurSelItem();

    if (nIndex >= 0 && nIndex < m_ctrlList.GetItemCount())
    {
        if (AfxMessageBox(_T("Delete item?"),
		    MB_YESNO | MB_ICONQUESTION) == IDYES)
		{
		    // Delete the item in the list control
		    m_ctrlList.DeleteItem(nIndex);

		    // Set the focus to the next list item
            if (nIndex < m_ctrlList.GetItemCount())
			{
                m_ctrlList.SetCurSelItem(nIndex);
                ASSERT(m_ctrlList.GetCurSelItem() == nIndex);
			}
		    else if (m_ctrlList.GetItemCount() > 0)
			{
                nIndex = m_ctrlList.GetItemCount() - 1;

                m_ctrlList.SetCurSelItem(nIndex);
                ASSERT(m_ctrlList.GetCurSelItem() == nIndex);
			}
		}
	}

	UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

void CListCtrlTestDlg::OnBtnUp()
{
	// TODO: Add your control notification handler code here

    int nIndex = m_ctrlList.GetCurSelItem();

    if (nIndex >= 1 && nIndex < m_ctrlList.GetItemCount())
    {
        // Move the list item up by one position
        m_ctrlList.MoveItemUp(nIndex);
	}

	UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

void CListCtrlTestDlg::OnBtnDown()
{
	// TODO: Add your control notification handler code here

    int nIndex = m_ctrlList.GetCurSelItem();

    if (nIndex >= 0 && nIndex < m_ctrlList.GetItemCount() - 1)
    {
        // Move the list item down by one position
        m_ctrlList.MoveItemDown(nIndex);
	}

	UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

void CListCtrlTestDlg::OnBtnTop()
{
	// TODO: Add your control notification handler code here

    int nIndex = m_ctrlList.GetCurSelItem();

    if (nIndex >= 1 && nIndex < m_ctrlList.GetItemCount())
    {
        // Move the item to the top of the list
        m_ctrlList.MoveItemTop(nIndex);
	}

	UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

void CListCtrlTestDlg::OnBtnBottom()
{
	// TODO: Add your control notification handler code here

    int nIndex = m_ctrlList.GetCurSelItem();

    if (nIndex >= 0 && nIndex < m_ctrlList.GetItemCount() - 1)
    {
        // Move the item to the bottom of the list
        m_ctrlList.MoveItemBottom(nIndex);
	}

	UpdateListCtrlBtns();
	m_ctrlList.SetFocus();
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级午夜理伦三级中视频| av在线不卡观看免费观看| 亚洲三级免费电影| 久久综合九色综合欧美就去吻| 91麻豆精品91久久久久同性| 欧美亚洲日本一区| 欧美三片在线视频观看| 欧美日韩国产首页| 欧美一区二区久久久| 日韩午夜在线播放| 欧美成人r级一区二区三区| 日韩午夜av一区| 精品国产免费人成在线观看| 精品国产一区二区三区忘忧草| 精品国产1区二区| 国产亚洲欧美激情| 国产精品国产成人国产三级| 亚洲综合一二区| 懂色av一区二区夜夜嗨| 波多野洁衣一区| 欧洲在线/亚洲| 日韩精品一区二区三区在线观看| 久久免费看少妇高潮| 国产精品五月天| 亚洲国产视频在线| 老司机精品视频一区二区三区| 国精产品一区一区三区mba桃花 | 91精品啪在线观看国产60岁| 欧美美女一区二区在线观看| 日韩三级视频在线看| 欧美激情资源网| 一区二区三区欧美视频| 日韩福利电影在线| 成人午夜激情视频| 在线成人免费视频| 国产蜜臀av在线一区二区三区| 亚洲影视在线播放| 韩国理伦片一区二区三区在线播放| 99re66热这里只有精品3直播| 欧美性色综合网| 国产亚洲自拍一区| 亚洲成人激情社区| 波波电影院一区二区三区| 欧美一区二区三区在线看| 亚洲欧美日韩久久| 麻豆精品在线看| 欧美视频一区在线| 亚洲欧洲成人精品av97| 秋霞av亚洲一区二区三| 成人精品视频一区二区三区尤物| 欧美日韩一区二区三区高清| 国产精品美女久久久久久久久| 日韩激情一二三区| 91在线视频18| 国产欧美日韩精品a在线观看| 天堂av在线一区| 在线精品视频小说1| 国产精品美女www爽爽爽| 免费在线观看不卡| 欧美日本在线观看| 亚洲精品你懂的| 成人免费va视频| 国产午夜精品一区二区三区嫩草| 青青国产91久久久久久| 91极品美女在线| 亚洲日本免费电影| jvid福利写真一区二区三区| 久久婷婷成人综合色| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美色视频在线观看| 亚洲男同性恋视频| 91在线云播放| 亚洲美女屁股眼交| 99久久婷婷国产综合精品电影| 中文字幕av一区 二区| 国产精品99久久久久久宅男| 久久精品亚洲乱码伦伦中文 | 国产亚洲一区二区三区| 在线观看视频91| 亚洲卡通欧美制服中文| 91视视频在线观看入口直接观看www| 国产午夜精品在线观看| 国产成人综合视频| 国产精品无遮挡| 一本久久a久久免费精品不卡| 亚洲欧美乱综合| 欧美专区在线观看一区| 亚洲国产美国国产综合一区二区| 欧美日韩精品免费观看视频| 午夜视频一区在线观看| 欧美妇女性影城| 九九**精品视频免费播放| 精品盗摄一区二区三区| 国产不卡视频一区二区三区| 亚洲日本青草视频在线怡红院| 在线观看成人免费视频| 日本成人在线不卡视频| 久久久亚洲国产美女国产盗摄| 成人短视频下载| 亚洲成人av福利| 久久综合国产精品| 91在线你懂得| 蜜臀久久99精品久久久久宅男 | 亚洲影视资源网| 日韩一区二区免费视频| 国产98色在线|日韩| 亚洲在线观看免费| 欧美videossexotv100| 成人精品免费视频| 亚洲成av人片在线| 久久久久国产精品厨房| 欧美亚洲国产一区二区三区va | 日日欢夜夜爽一区| 久久综合九色欧美综合狠狠| 一本久久a久久精品亚洲| 美国十次综合导航| 亚洲免费在线视频一区 二区| 欧美一区二区福利视频| jlzzjlzz亚洲日本少妇| 免费欧美高清视频| 亚洲欧美另类图片小说| 日韩一区二区三区视频在线观看 | 在线免费观看日本欧美| 国产乱人伦偷精品视频不卡| 亚洲午夜一区二区三区| 国产日韩精品一区| 欧美一区二区三区视频在线| 色美美综合视频| 成人综合婷婷国产精品久久| 日本aⅴ亚洲精品中文乱码| 亚洲日本va午夜在线影院| 久久青草国产手机看片福利盒子| 欧美日韩欧美一区二区| 91免费国产视频网站| 韩国三级电影一区二区| 日本午夜一区二区| 一区二区三区四区在线| 国产精品不卡在线观看| 久久久国际精品| 欧美变态凌虐bdsm| 7777精品伊人久久久大香线蕉的 | 国产亚洲精品中文字幕| 欧美电影影音先锋| 日本韩国欧美国产| 91在线视频观看| 99精品欧美一区二区三区小说| 国产精品538一区二区在线| 麻豆精品在线视频| 麻豆91免费看| 麻豆国产91在线播放| 免费人成网站在线观看欧美高清| 午夜亚洲国产au精品一区二区| 亚洲精品视频在线| 一区二区三区高清不卡| 亚洲日本在线观看| 夜夜精品浪潮av一区二区三区| 亚洲视频你懂的| 一区二区三区精品在线| 亚洲一区二区中文在线| 樱花影视一区二区| 亚洲电影在线免费观看| 亚洲va欧美va天堂v国产综合| 午夜视频一区在线观看| 免费av成人在线| 国内精品伊人久久久久av一坑 | 亚洲国产欧美日韩另类综合| 三级欧美韩日大片在线看| 免费人成在线不卡| 国产精品中文欧美| 99在线热播精品免费| 欧美色网站导航| 欧美一级午夜免费电影| 久久这里只有精品6| 国产精品美日韩| 亚洲成人精品在线观看| 麻豆精品一二三| gogo大胆日本视频一区| 欧美日韩精品欧美日韩精品| 精品国产免费人成在线观看| 中文字幕一区av| 日本中文字幕一区二区视频| 国产精品一区专区| 色伊人久久综合中文字幕| 91麻豆精品国产91久久久资源速度| 精品精品欲导航| 亚洲天堂成人在线观看| 男人操女人的视频在线观看欧美 | 亚洲高清免费观看| 国模少妇一区二区三区| 色婷婷综合激情| 2020日本不卡一区二区视频| 亚洲激情五月婷婷| 精品一区二区三区在线观看国产| www.久久精品| 日韩视频免费直播| 亚洲欧美怡红院| 久久www免费人成看片高清| 91浏览器在线视频| 日韩精品中文字幕一区| 一区二区三区高清在线|