CRectTracker 概要用法

基本的皮筋用法


MFC代碼:

BOOL CDlgTest::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO:? 在此添加額外的初始化

m_tracker.m_nStyle = CRectTracker::resizeOutside | CRectTracker::solidLine;

m_tracker.m_nHandleSize = 6;

m_tracker.m_rect.SetRect(0,0,100,100);

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

// 異常: OCX 屬性頁應(yīng)返回 FALSE

}

BOOL CDlgTest::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)

{

// TODO: 在此添加消息處理程序代碼和/或調(diào)用默認(rèn)值

if (m_tracker.SetCursor(pWnd, nHitTest)) {

return TRUE;

}

return CDialog::OnSetCursor(pWnd, nHitTest, message);

}

void CDlgTest::OnLButtonDown(UINT nFlags, CPoint point)

{

// TODO: 在此添加消息處理程序代碼和/或調(diào)用默認(rèn)值

if (m_tracker.HitTest(point) < 0) {

//m_tracker.TrackRubberBand(this, point);

} else {

m_tracker.Track(this, point, TRUE);

m_edit.MoveWindow(&m_tracker.m_rect);

if (m_lastWidth > 0) {

float x = (float)m_tracker.m_rect.Size().cx / (float) m_lastWidth;

int n = x * 100;

m_edit.PostMessage(EM_SETZOOM, n, 100);

}

else {

m_lastWidth = m_tracker.m_rect.Size().cx;

}

}

Invalidate();

CDialog::OnLButtonDown(nFlags, point);

}

void CDlgTest::OnPaint()

{

CPaintDC dc(this); // device context for painting

// TODO: 在此處添加消息處理程序代碼

// 不為繪圖消息調(diào)用 CDialog::OnPaint()

m_tracker.Draw(&dc);

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 7,335評論 0 17
  • ## 可重入函數(shù) ### 可重入性的理解 若一個程序或子程序可以安全的被并行執(zhí)行,則稱其為可重入的;即當(dāng)該子程序正...
    夏至亦韻閱讀 810評論 0 0
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,922評論 0 33
  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile麗語閱讀 4,102評論 0 6
  • 今日來一首插曲,為大家送上一篇lamp在Ubuntu上的安裝,首先介紹一下Lamp:LAMP 是指一組通常一起使用...
    geek丶Mc閱讀 333評論 0 0

友情鏈接更多精彩內(nèi)容