Font dialog with custom text preview '& color

The MFC CFontDialog class encapulates the standard Font common dialog box. This dialog allows you to select a font. It display a sample window showing some text in the required font. It is nice to be able to specify your own sample text - for example, if I am editing a text object in a drawing package, I would want to see the actual text in the sample box.

However, the MFC implmentation does not let you easily specify the sample text.

The following class, derived from CFontDialog, lets you do just this. It also lets you set and get the color selected in the dialog. Simple create a CMyFontDialog and specify the sample text in the constructor (or call SetSampleText() before calling DoModal()). Also call SetTextColor() before calling DoModal(), and retrieve the selected color afterwards with TextColor().

// FontDialog.h
// (c) 1997 Roger Onslow

#ifndef _CMyFontDialog_
#define _CMyFontDialog_

class CMyFontDialog : public CFontDialog {
     DECLARE_DYNCREATE(CMyFontDialog);
public:
     CMyFontDialog(LPLOGFONT lplogfont=NULL, LPCTSTR sampletext="Sample Text", CWnd* pParentWnd=NULL);
protected:
     LPCTSTR m_sampletext;
public:
     CString SampleText() const { return m_sampletext; }
     void SetSampleText(LPCTSTR sampletext) { m_sampletext = sampletext; }
public:
     COLORREF TextColor() const { return m_cf.rgbColors; }
     void SetTextColor(COLORREF rgbColors) { m_cf.rgbColors = rgbColors; }
protected:
     // Dialog Data
protected:
     //{{AFX_DATA(CMyFontDialog)
     //}}AFX_DATA
     // Overrides
protected:
     // ClassWizard generate virtual function overrides
     //{{AFX_VIRTUAL(CMyFontDialog)
     virtual BOOL OnInitDialog();
     //}}AFX_VIRTUAL
     // Implementation
protected:
     // Generated message map functions
     //{{AFX_MSG(CMyFontDialog)
     //}}AFX_MSG
     DECLARE_MESSAGE_MAP()
};

#endif




////////////////////////////////////////////////////////////////////
// FontDialog.cpp
// (c) 1997 Roger Onslow

#include "stdafx.h"
#include "FontDialog.h"

#ifdef _DEBUG
#undef THIS_FILE
static char BASED_CODE THIS_FILE[] = __FILE__;
#endif

IMPLEMENT_DYNCREATE(CMyFontDialog, CFontDialog)

BEGIN_MESSAGE_MAP(CMyFontDialog, CFontDialog)
//{{AFX_MSG_MAP(CMyFontDialog)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()

CMyFontDialog::CMyFontDialog(LPLOGFONT lpLogfont, LPCTSTR sampletext, CWnd* pParentWnd)
		: CFontDialog(lpLogfont,CF_EFFECTS | CF_SCREENFONTS, NULL, pParentWnd)
		, m_sampletext(sampletext)
{
}

BOOL CMyFontDialog::OnInitDialog() {
     BOOL r = CFontDialog::OnInitDialog();
     if (m_sampletext) {
          SetDlgItemText(stc5, m_sampletext);
     }
     return r;
}

Comments:



Comments

  • købe billige sort GHD glattejern,nye ghd IV sort

    Posted by pletcherkff on 06/15/2013 12:06pm

    [url=http://fladjernghd.webgarden.com/]Fladjern ghd[/url] Du kan manuelt styre temperaturen i ghd glattejern. Hvis du ønsker en høj temperatur kontakt dit hår, så du kan varme lang tid at nå dine ønskede temperatur. Du kan bruge. Bemærk: når du bruger ghd glattejern, skal du være opmærksom på deres egen sikkerhed, for at undgå at blive brændt. Let at bruge ghd glattejern, godt modelleringsværktøjer.Perfekt hår tænketank til at hjælpe dig med at ændre dit udseende, kan du finde online DVD præsentation af måder at opnå varme ghd glat hår stilarter trin for trin instruktioner. Såsom hands-on lære dig, så snart som muligt fortrolig med brugen af billige ghd glattejern. [url=http://fladjernghd.webgarden.com/]Fladjern ghd[/url] ghd fladjern anvender keramiske plader til glat, let at forme. Spændinger kontrol, kan du oprette den helt lige mellem de keramiske plader af glat hår. Produktet har også den samme anion, bevaring gør håret smidigt og blankt, for at undgå panik. Kroppen med en digital varmeindstillinger, digital display gør det nemt at vælge den ønskede funktion eller justere formen af ??temperaturen. Det kan hjælpe dig med at vælge det rigtige hår og den ønskede temperatur. Tryk på en knap, det samme har en perfekt form effekt. 1 time auto-sluk-funktionen giver dig mulighed for at bruge mere ro i sindet. Ghd glattejern så sikker og enkel betjening. Besætte stor markedsandel. Bliv en køber dille. På grund af dette, ofte forekommer falsk, så flere og flere mennesker køber ægte ghd glattejern. Vores butik, selv om salget af ghd håret sort. Men vi er regelmæssige ghd glattejern produkter. Fandt du ikke bringe alle former for falske brand skader. Vores produkt kort med det fysiske kort, er nøjagtig det samme. For at sikre sande og pålidelige produkter. Og vi sælger billige ghd glattejern, 7 * 24 online-funktioner, kan du købe på ethvert tidspunkt. Så længe du har valgt den ønskede type, udfylde personlige oplysninger, osv. relaterede emner, kan produktet blive leveret direkte til din ventende hænder. Venligst købe ghd glattejern produkter følelser før, se på vores privacy policy, Om os, transport, FAQ og mere relevante politikker, vil dette hjælpe dig til at købe vores produkter. Tak for dit samarbejde. [url=http://glattejernghdpris.webgarden.es/]Glattejern ghd pris[/url] Jeg har fundet ud af for nylig, og har set GHD Glam Palm med mine egne øjne, at GHD Danmarklancerer der 2008 Limited Edition Purple GHD IV Styler nytår Set.GHD IV Mark4 er verdens førende mærke af ghd fladjern.Nye år GHD bringe ud en ny Limited Edition gave sæt, og i år er ikke anderledes.ghd glattejern er på vej! Det har innovative stil og mange farver. og alle produkter vises på vores hjemmeside er til rådighed, og har lagre here.We tilbyde helt specielle priser til vores kunder, og meget hurtigt og sikkerhed levering.Vores ghd glattejern er salg i rabat nu, nogle af dem er op med 44% OFF.We kan levering inden for 24 timer efter modtagelsen af din payment.It er meget sikker dør til dør service, aldrig få problemer med toldmyndighederne.

    Reply
  • clarisonic pro 2012 pattern in pink

    Posted by iouwanzi on 06/06/2013 10:22pm

    [url=http://www.miaclarisonicaustralia.org/]clarisonic mia 2[/url] peut-être mieux si vous profitez de cette fondation se bloque style pour le monde moderne. devenir une personne mystifié destinée à une bonne approche très bon pour faire la coiffure impressionnante? vous permet de le fait que c’est dans la terre soigneusement introduire une règle peut être limitée par un excellent instrument qui est connecté n’est pas vraiment efficace appréciation des résultats définitifs de ces cheveux crépus? et peut également demander le jaune est toujours dans vos propres besoins redressement de vos cheveux. Rose tout simplement charmant, le moment, en raison de la longue durée développer la gestion motif merveilleux et très important. En outre, ghd lisseur en céramique infrarouge critique couvre belle chevelure bouclée, et également la compression d’huiles naturelles, de l’eau et de serrures colorants alimentaires, bouclés cheveux sauvages éclatantes assurés reçoivent des produits de qualité supérieure qui va venir. [url=http://www.australiaclarisonic.com/clarisonic-classic]clarisonic classic[/url] Un fabuleux produit saisonnier qui devrait satisfaction à peu près toutes les fashionistas à long terme et de créer par lui-même comme l’un des principaux programmes de cette année ou plus. Katy Perry expose « Écarlate », la dernière collection de tout poil frisé de compagnie ghd.Au moment encore une fois, une plus importante marque de ghd cheveux crépus loin un sensationnel fer plat important qui aidera à obtenir plus d’un du plus prouvé utile ainsi que semble en vogue à l’époque. [url=http://www.australiaclarisonic.com/]cheap clarisonic australia[/url] Les producteurs primaires suivantes commencé pour sa bonne qualité merveilleuse de votre sèche-cheveux et fer à lisser est aujourd’hui célèbre également la distinction entre les femmes qui parfois vous avez besoin pour redresser votre chevelure afin d’éliminer ces types de problèmes ghd fer luxe Violet, à son tour, n’est pas un peu ne serait tout simplement pas seulement en possession du logiciel. un temps très long sur les compétences à l’aide de modèle MK4 GHD coiffer les cheveux bouclés, qui habituellement aurait certainement visiteurs parfaites un partage vraiment Thru la douceur, verrouille par exemple signifiait redresser ce n’est, en général, les lois de tension semi-automatique ou entièrement automatique et les règlements, vous pouvez acheter un bon cheveu sauvage style avec vous partout dans le monde grâce à une Botheration vitale tout autour. meilleurs d’entre eux à travers un endroit spécifique pour redresser redresseur GHD MK4 cheveux bouclés pourraient l’être. problème en effet, le fait qui se produit à l’aide d’un opérateur capable dvd, plus de points, le type choisi des méthodes simples pour vous aider à contrôler l’application correcte et

    Reply
  • stc5

    Posted by Ghostie on 07/14/2004 09:45am

    This won't compile. What is 'stc5' in the SetDlgItemText() call?

    • Posted by Ghostie on 07/14/2004 10:47am

      #include Dlgs.h (in brackets) in order to be able to use 'stc5'.

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

Top White Papers and Webcasts

  • Java developers know that testing code changes can be a huge pain, and waiting for an application to redeploy after a code fix can take an eternity. Wouldn't it be great if you could see your code changes immediately, fine-tune, debug, explore and deploy code without waiting for ages? In this white paper, find out how that's possible with a Java plugin that drastically changes the way you develop, test and run Java applications. Discover the advantages of this plugin, and the changes you can expect to see …

  • A modern mobile IT strategy is no longer an option, it is an absolute business necessity. Today's most productive employees are not tied to a desk, an office, or a location. They are mobile. And your company's IT strategy has to be ready to support them with easy, reliable, 24/7 access to the business information they need, from anywhere in the world, across a broad range of communication devices. Here's how some of the nation's most progressive corporations are meeting the many needs of their mobile workers …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds