步驟1: Set Up Kinect for Windows SDK
滑鼠點選 Download Latest SDK 按鈕, 下載檔案 1.7版本 222 MB
步驟 2: Set Up Kinect for Windows Developer Toolkit
滑鼠點選 Download Toolkit 按鈕, 下載檔案 379 MB
步驟1: Set Up Kinect for Windows SDK
滑鼠點選 Download Latest SDK 按鈕, 下載檔案 1.7版本 222 MB
步驟 2: Set Up Kinect for Windows Developer Toolkit
滑鼠點選 Download Toolkit 按鈕, 下載檔案 379 MB
void Cvdpict1Dlg::OnBnClickedButton1()
{
// TODO: 在此加入控制項告知處理常式程式碼
CDC* myPictDC = m_pict.GetDC(); // 人機(GUI)上的PIC
上面這一行有更簡單的寫法
CClientDC myPictDC(&m_pict); // 傳入m_pict的記憶體位置用來初始化CClientDC物件, 即myPicDC
CDC workDC; // 作業用DC
CBitmap myBMP;
CRect myRect;
m_pict.GetClientRect( myRect ); // 取得目前人機(GUI)上PIC的大小
myPictDC->FillSolidRect(myRect, RGB(255, 255, 255)); // 用白色填滿全部區域
//m_pict.GetDC()->FillSolidRect(myRect, RGB(0, 255, 0));
myBMP.LoadBitmapW( IDB_BITMAP1); // 讀取圖片
workDC.CreateCompatibleDC( myPictDC ); // 創建一塊與myPictDC有共通性之記憶體DC
CBitmap* oldBMP = workDC.SelectObject( &myBMP ); // 載入圖片至workDC記憶體, 並回傳oldBMP
myPictDC->BitBlt(0, 0, 256, 256, &workDC, 0, 0, SRCCOPY);// myPictDC複製workDC(記憶體上的圖片)
workDC.SelectObject( oldBMP ); // 恢復原本的點陣圖
m_pict.ReleaseDC( myPictDC); // 進行釋放
}
void Cvdlist1Dlg::OnBnClickedButton1()
{
// TODO: 在此加入控制項告知處理常式程式碼
m_list1.ResetContent();
m_list1.AddString(_T("牽牛花"));
m_list1.AddString(_T("波斯菊"));
m_list1.AddString(_T("水仙"));
m_list1.AddString(_T("紫陽花"));
m_list1.AddString(_T("鈴蘭"));
m_edit1.SetWindowTextW(_T(""));
}
void Cvdlist1Dlg::OnBnClickedButton2()
{
// TODO: 在此加入控制項告知處理常式程式碼
m_list1.ResetContent();
m_list1.AddString(_T("鼠"));
m_list1.AddString(_T("牛"));
m_list1.AddString(_T("虎"));
m_list1.AddString(_T("兔"));
m_edit1.SetWindowTextW(_T(""));
}
void Cvdlist1Dlg::OnLbnSelchangeList1()
{
// TODO: 在此加入控制項告知處理常式程式碼
CString ss;
int n;
n = m_list1.GetCurSel(); // 取得索引值
if( n != LB_ERR )
{
m_list1.GetText(n, ss);
m_edit1.SetWindowTextW(ss);
}
}
原始程式: vdlist1
新增Picture Control元件的屬性中預設ID為IDC_STATIC, 無法直接加入變數, 需更改其名稱 IDC_STATIC_1或其他名稱, 才可以取消唯讀屬性並加入變數, 如m_pic
void Cvdchkbx1Dlg::OnBnClickedButton1()
{
// TODO: 在此加入控制項告知處理常式程式碼
int r=0, g=0, b=0;
CClientDC myDC(&m_pic);
CRect mySize;
m_pic.GetClientRect( mySize );
if( m_check1.GetCheck() == BST_CHECKED ) r = 255;
if( m_check2.GetCheck() == BST_CHECKED ) g = 255;
if( m_check3.GetCheck() == BST_CHECKED ) b = 255;
myDC.FillSolidRect( mySize, RGB(r, g, b));
}
BOOL Cvdedbox2Dlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此加入特定的程式碼和 (或) 呼叫基底類別
if(pMsg->message == WM_KEYDOWN){
if(pMsg->wParam == VK_RETURN)
return TRUE;
if(pMsg->wParam == VK_ESCAPE)
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
原始程式:vdedbox2
Youtube操作展示:2013-03-26_對話框防止ENTER或ESC關閉程式