Click here to Skip to main content
15,886,422 members
Articles / Desktop Programming / MFC
Article

A Property Table Editor

Rate me:
Please Sign up or sign in to vote.
4.65/5 (10 votes)
11 Aug 20041 min read 49.8K   2.4K   33   4
An article showing a property table editor like VC7.0's property table.

Introduction

Recently, I wanted to use a property table editor like VC7.0's. So, I searched it in CodeProject website. I found a good example in "CPropTree v1.0 - Property Tree Control", which is created by sramsay. Thanks to the author. I modified it a little, and added a toolbar, and a combobox, which made it like VC7.0's property table.

I added a new class, used for toolbar: CPropToolbar, which is not created originally by me. I'm sorry I forget who created it originally.

And I added a new class: CToolbarContainer, which is used to respond to the toolbar's commands.

Implementation

In PropToolbar.cpp, you need to add you toolbar's ID.

static const UINT toolbarItems[] =
{
    ID_PROP_CATEGORIZE,
    ID_PROP_ALPHABETIC
};

BEGIN_MESSAGE_MAP(CPropToolbar, CToolBarCtrl)
    ON_NOTIFY_RANGE( TTN_NEEDTEXTA, ID_PROP_CATEGORIZE, 
                       ID_PROP_ALPHABETIC, OnNeedTextA)
    ON_NOTIFY_RANGE( TTN_NEEDTEXTW, ID_PROP_CATEGORIZE, 
                       ID_PROP_ALPHABETIC, OnNeedTextW)

ON_WM_LBUTTONDBLCLK()
END_MESSAGE_MAP()

In ToolbarContainer.h, I added a message map to deal with the toolbar's commands.

afx_msg void OnSortByCategory();
afx_msg void OnSortByAlpha();

You can get the detailed implementation in my source code. Maybe my code is short of comments, but tidy enough :(, you can get it.

A Big Interesting Bug

Yell, after I implemented it, I was happy it looked very well. But soon, I found a big bug. Sometimes when you are operating it, or when you minimize it, wait for some time (maybe half an hour), you will find the toolbar changed as before.

I don't know what causes that. Maybe someone can tell me or solve it. I will really appreciate him/her very much! Can you?

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
China China
A programmer graduated 2003, and worked for one year. Program with C/C++, sometimes use perl, or java, etc. I like CodeProject website, and want to make more friends here. I'm dreaming to beacome a guy in programming.

Comments and Discussions

 
GeneralFeature Request Pin
Hamid Reza Mohammadi10-Apr-07 1:00
Hamid Reza Mohammadi10-Apr-07 1:00 
It's a great and easy to use property editor. However I think it lacks a must have feature, a control (just like edit/static/combo/color controls implemented already) which can launch a new dialog for value modification (eg. font field which may need a font selection dialog)
GeneralSDK Update Pin
Yohi13-Aug-04 1:38
Yohi13-Aug-04 1:38 
GeneralRe: SDK Update Pin
david connell7-Jul-05 13:29
david connell7-Jul-05 13:29 
GeneralExcellent Pin
Paul Selormey12-Aug-04 12:05
Paul Selormey12-Aug-04 12:05 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.