1. 程式人生 > >CMFCPropertyGridProperty 新增按鈕

CMFCPropertyGridProperty 新增按鈕

CMyMFCPropertyGridProperty 是繼承自CMFCPropertyGridProperty的類,在其中新增一個成員變數m_bHasButton。需要新增按鈕物件將該變數設為TRUE。

接下來過載如下幾個函式即可,對於m_bHasButton為FALSE的情況,直接呼叫父類函式,這樣便不會影響不新增Button的行為

BOOL CMyMFCPropertyGridProperty::HasButton() const
{
if (m_bHasButton)
{
return m_bHasButton;
}
else
{
return __super::HasButton();
}
}


void CMyMFCPropertyGridProperty::OnClickButton(CPoint point)
{
if (m_bHasButton)
{
theApp.m_IRCameraCtrlMgr.DoNUCAction();
}
else
{
return __super::OnClickButton(point);
}
}


void CMyMFCPropertyGridProperty::AdjustButtonRect()
{
if (m_bHasButton)
{
m_rectButton = m_Rect;
m_rectButton.left = m_Rect.right-130;
m_rectButton.top ++;
}
else
{
return __super::AdjustButtonRect();
}
}


void CMyMFCPropertyGridProperty::OnDrawButton(CDC* pDC, CRect rectButton)
{
if (m_bHasButton)
{
ASSERT_VALID(this);
ASSERT_VALID(pDC);
ASSERT_VALID(m_pWndList);
pDC->FillRect(rectButton, &(GetGlobalData()->brBtnFace));
CString str = _T("My Button");
pDC->DrawText(str, rectButton, DT_SINGLELINE | DT_CENTER | DT_VCENTER);

CRect rectFocus = rectButton;
rectFocus.DeflateRect(2, 2);
pDC->DrawFocusRect(rectFocus);
}
else
{
return __super::OnDrawButton(pDC, rectButton);
}
}

相關推薦

CMFCPropertyGridProperty 新增按鈕

CMyMFCPropertyGridProperty 是繼承自CMFCPropertyGridProperty的類,在其中新增一個成員變數m_bHasButton。需要新增按鈕物件將該變數設為TRUE。接下來過載如下幾個函式即可,對於m_bHasButton為FALSE的情況

UITableView中新增按鈕不響應問題——UITableViewCell綁定了錯誤的View

目錄 問題 發現 原因 解決 只是為了做個記錄 問題 在某一特定型號和版本的實體機上,UITableView中新增按鈕不響應問題,但是用了相同版本的模擬器都沒有問題 發現 偶爾的一次在awakeFromNib中新增東西

Revit二次開發新增按鈕

整體結構佈局  命令類  namespace HW { [Transaction(TransactionMode.Manual)] class Cmd : IExternalCommand { public Result Ex

Java asp頁面新增按鈕提交事件給servlet

1.jsp頁面 2.jsp頁面有一個 form表單,表單向後臺進行資料提交 3.地址解讀 4.form表單提交方式 form表單採用post提交方式,最開始我的Helloworld.java(servlet)沒有實現HttpServlet沒有實現Servlet的doPo

Android Studio-------新增按鈕

我們要想新增按鈕,首先得有一個活動Activity,所以先手動建立一個活動。 點選第一項-> 點選Finish。 建立成功之後,雙擊出現如下程式碼: 因為Android Studio的設計講究邏輯與檢視分離,最好一個活動對應一個佈局,

leaflet 在地圖popup彈框中新增按鈕並點選響應(vue2leaflet),設定popup的content屬性,新增button

效果如圖,點選【進入】按鈕,彈出alert提示框。當然這裡可以把alert換成其他響應需求。  首先給popup的content新增button: <l-popup :content="profile1-1+ '<br><button id=

leaflet自定義popup彈框,給popup彈框顯示內容新增按鈕button或者超連結等html標籤

首先效果圖: 這裡在彈框的文字下面添加了一個button按鈕和超連結。這種效果在web應用中很常見。所以下面總結一下如何用leaflet實現。               首先要用leaflet實現彈框的效果(如下

MFC 單文件新增按鈕

VS 單文件 新增按鈕 今天做專案需要在單文件中建立按鈕來響應函式,即點選按鈕,呼叫某函式,特此記錄。 1. 在XXXView中新增CButton變數,例如 CButton start; 2. 下來就是 建立按鈕 了 ① 在資源 Rescource.h 中註冊一下 按鈕  #define

新增按鈕聲音  播放聲音

AudioToolbox framework     使用AudioToolbox framework。這個框架可以將比較短的聲音註冊到 system sound服務上。被註冊到system sound服務上的聲音稱之為 system sounds。它必須滿足下面幾個條件。 1、 播放的時間不能

java:Applet佈局問題,如何新增按鈕,標籤問題總結

今天學習了applet佈局問題:按鈕、標籤是怎樣加入到applet程式(容器)當中去的呢?需要用到佈局容器管理器(LayoutManager):它用於協助容器確定加入的元件(按鈕等)應該放置的位置 awt提供了4中常用的佈局容器管理器>>FlowLayout>>BorderLayou

餓了麼專案---12、父子元件、兄弟元件之間資料通訊與事件派發(關於購物車新增按鈕的動畫)

html程式碼 生成一個動畫小球的div,並且生成五個小球,五個是為了生成一定數量的小球來作為操作使用,按照小球動畫的速度,一般來說五個也可以保證有足夠的小球數量來執行動畫 動畫的內容分別是外層和內

點選新增按鈕--出現一個框框(類似於新增學習經歷-本科-研究生)

import React, { Component } from "react"; class Inner extends Component { defaultValue = { taskDescription: "", vehicleClean: "" }; c

ABAP 選擇螢幕應用工具欄新增按鈕

REPORT  ZCMH2.TYPE-POOLS icon.TABLES sscrfields.DATA functxt TYPE smp_dyntxt. PARAMETERS: p_carrid TYPE s_carr_id,             p_cityfr TYPE s_from_cit. SE

VB.Net程式設計:動態新增按鈕或者控制元件

由於程式需要,在一個窗體中,讀取資料庫的記錄內容,然後在介面中新增相應的按鈕,供使用者點選,響應對應的事件。 谷歌一下很多,看到: http://developer.51cto.com/art/200910/155672.htm http://www.dotblogs.co

C# 在panel中動態新增按鈕 與 分批刪除

參考文章:①http://www.cnblogs.com/yuzhihui/p/5749233.html②http://www.cnblogs.com/steed-zgf/archive/2012/04/03/2430819.html先來一張效果圖。畫布中的圖片是以 butt

iOS tabbar中間新增按鈕

如何在系統自帶的tabbar上新增一個按鈕?其實實現過程很簡單。比如你的tabbar上本來有四個選項,然後在tabbar中間還新增一個自定義的按鈕,總共就是五個按鈕。實現的思路就是在初始化tabbar的時候,新增五個控制器,然後禁止選擇中間的那個按鈕(第三個按鈕

swift 新增按鈕

//建立view let view1 = UIView(frame:  CGRectMake(0, 0, 100, 100)) view1.backgroundColor = UIColor.redColor() //建立按鈕 (目前只會這一種建立方法)

NC 新增按鈕 控制不可用

NC 新增自定義按鈕 控制是否可用 1.重寫 NCAction的 isActionEnable方 @Override protected boolean isActionEnable

abap中選擇螢幕上新增按鈕按鈕新增文字和圖片,並新增響應事件

**選擇螢幕SELECTION-SCREEN BEGIN OF BLOCK main WITH FRAME TITLE TEXT-001.PARAMETERS:p_matnr LIKE mara-matnr OBLIGATORY,           p_werks LIKE

ionic開發——百度地圖InfoWindow資訊視窗上新增按鈕,無法觸發點選事件問題解決辦法

ionic開發中,在使用百度地圖的時候,有時我們需要在點選地圖上標註的海量點彈出一個infowindow的資訊視窗,自定義資訊視窗的內容後,我們想要可以在資訊視窗上面點選的時候,發現點選沒有效果。 我