CCharSetBtn Control

Environment: VC6 SP4, NT4 SP3

I needed a control to choose a character from a specific charset and the options to use bold and/or italic font. Therefore I derived an ownerdrawn control from CButton based on the work of Shekar Narayanan and S. D. Rajan which opens a popup dialog as a drop-down window. The Dialog itself holds a ComboBox derived font-ComboBox (which includes some code-snippets of Norm Almond) and a custom control which performs the character selection.

To use the control, do the following:

  1. Import the header files (including in the attached source code) and add the .cpp files (also attached to this article) from the section CharSetBtn.
  2. Import the resources IDB_GLYPHS (printer-images) and IDD_CHARSET_DLG (the popup-window including the CharSetCtrl).
  3. On your dialog insert a button (set style-flag ownerdraw).
  4. Add a CButton control-member-variable in the class-wizard. Change the CButton class in the dialog-header-file to CCharSetBtn and that's it.

The class CCharSetBtn has got the member-variables

  int      m_nChar;
  CString  m_strFaceName;
  BOOL     m_bItalic;
  BOOL     m_bBold;

which perform the data-exchange.

With a little modification you can also use the complete LOFGONT structure.

If you decide to use this code please do not remove copyright notices from the source and header files and give me a short e-mail.

Downloads

Download demo project - 40 Kb
Download source - 29 Kb


Comments

  • very good

    Posted by Legacy on 12/21/2001 12:00am

    Originally posted by: hhk

    i m so glad to read this article

    Reply
  • A tip for you

    Posted by Legacy on 09/26/2001 12:00am

    Originally posted by: Rui Lopes

    You don't need to declare a new windowproc. You can handle the WM_ACTIVATE message in the CCharSetDlg message-map.

    Rui Lopes
    PS: Relpy also to my email.

    Reply
  • thanx, I learned something new :-)

    Posted by Legacy on 09/20/2001 12:00am

    Originally posted by: Dieter Hammer

    the way to close a dialog, when the user clicks outside, with the >NewWndProc< is super. I used SetCapture for this, but this way is better and easier. Good idea!

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: February 11, 2015 @ 1:00 p.m. ET / 10:00 a.m. PT New computing platforms, expanding information environments, recurrent security breaches and evolving regulatory frameworks are factors that security executives must contend with and address when developing their security strategy. In response to these dynamics, security executives are seeking stronger, more nimble and more pervasive security technologies to help protect business-critical information from unauthorized disclosure, loss or …

  • The 3rd Platform of computing, based around the four pillars of mobile computing, social media, big data and analytics, and cloud, is redefining what IT infrastructure needs to provide. Endpoint solutions must meet not only traditional data protection requirements, but also a new set of requirements driven by the explosion in mobile computing. This IDC white paper explores the customer challenges associated with safeguarding data residing on various endpoint devices, including laptops, tablets, and …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date