?
Solved

How do you display RichEdit in a dialog?

Posted on 1998-08-02
12
Medium Priority
?
280 Views
Last Modified: 2013-11-19
When ever I ad a RichEdit control to my dialog box, the dialog box will not come up on the screen when I run it.  But if I remove the RichEdit control, then the dialog box comes up just fine.   I want to use a RichEdit box instead of a Edit box to show some info.  How do I get my Dialog box to show up with it?
0
Comment
Question by:fredmastro
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
12 Comments
 
LVL 2

Author Comment

by:fredmastro
ID: 1320148
ALSO, how do I add a CString Variable to the RichEdit box.  when I go in Class Wizard, under Variables, I can't add a variable to it.
0
 
LVL 23

Expert Comment

by:chensu
ID: 1320149
You need to load the RichEdit DLL (RICHED32.DLL for version 1.0 or RICHED20.DLL for version 2.0) before creating the dialog box and free it after destroying the dialog box.

m_instRE = ::LoadLibrary(_T("RICHED32.DLL"));

if (m_instRE != NULL)
    ::FreeLibrary(m_instRE);

You should associate the RichEdit control to CRichEditCtrl instead of CString.
0
 
LVL 2

Author Comment

by:fredmastro
ID: 1320150
Chensu, Where do I get m_instRE  from?  I can't add a variable to the RichEdit Control, the Class Wizrd won't let me.
0
Percona Live Europe 2017 | Sep 25 - 27, 2017

The Percona Live Open Source Database Conference Europe 2017 is the premier event for the diverse and active European open source database community, as well as businesses that develop and use open source database software.

 
LVL 2

Author Comment

by:fredmastro
ID: 1320151
This is the error message I get when I paste your code in.

'm_instRE' : undeclared identifier

D:\DEV STUDIO\MY PROJECTS\MCA AUTORUN\MCA Autorun\NumbersDlg.cpp(52) : error C2440: '=' : cannot convert from 'struct INSTANCE__ *' to 'int'
                                                                 This conversion requires a reinterpret_cast, a C-style cast or function-style cast
0
 
LVL 8

Expert Comment

by:trestan
ID: 1320152
Use
HINSTANCE m_instRE = ::LoadLibrary(_T("RICHED32.DLL"));
I do not think you need to reject an answer to get following information.
0
 
LVL 2

Author Comment

by:fredmastro
ID: 1320153
Well I didn't get no errors trestan. Thanks.  But my dialog window still won't show up.  When I click on the assoicated button, nothing happens.
0
 
LVL 23

Expert Comment

by:chensu
ID: 1320154
You can define HINSTANCE m_instRE as a member variable of your CWinApp class and call LoadLibrary in the InitInstance, FreeLibrary in the ExitInstance.
0
 
LVL 2

Author Comment

by:fredmastro
ID: 1320155
How do I do that Chensu?
0
 
LVL 23

Accepted Solution

by:
chensu earned 210 total points
ID: 1320156
You can use the ClassWizard to add a private member variable HINSTANCE m_instRE in your CWinApp class and add the virtual member function ExitInstance. It should look like

class CMyWinApp : public CWinApp
{
//...
// Overrides
        // ClassWizard generated virtual function overrides
        //{{AFX_VIRTUAL(CPnApp)
        public:
        virtual BOOL InitInstance();
        virtual int ExitInstance();
       //}}AFX_VIRTUAL

private:
    HINSTANCE m_instRE;
//...
};

BOOL CMyWinApp::InitInstance()
{
//...
    m_instRE = ::LoadLibrary(_T("RICHED32.DLL"));
//...
}

int CMyWinApp::ExitInstance()
{
//...
    if (m_instRE != NULL)
        ::FreeLibrary(m_instRE);

    return CWinApp::ExitInstance();
//...
}

0
 
LVL 23

Expert Comment

by:chensu
ID: 1320157
By the way, you do not need to reject the answer to ask more questions if there is nothing wrong with the answer.
0
 
LVL 2

Author Comment

by:fredmastro
ID: 1320158
Sorry about that, with the answer thing.
I appreciate your help.  But where do I define the HINSTANCE? The dialog with the RichEdit box is off of the main dialog box.  I looked in ClassWizrd but not sure where to add what you mentioned.  Under CMainApp? Or Under CRichEditApp?  (The RichEditApp being loaded off the the MainApp)
0
 
LVL 23

Expert Comment

by:chensu
ID: 1320159
There should be only one class derived from CWinApp. The CMyWinApp I mentioned refers to that only one class.
0

Featured Post

Enroll in August's Course of the Month

August's CompTIA IT Fundamentals course includes 19 hours of basic computer principle modules and prepares you for the certification exam. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction: Finishing the grid – keyboard support for arrow keys to manoeuvre, entering the numbers.  The PreTranslateMessage function is to be used to intercept and respond to keyboard events. Continuing from the fourth article about sudoku. …
Introduction: Hints for the grid button.  Nested classes, templated collections.  Squash that darned bug! Continuing from the sixth article about sudoku.   Open the project in visual studio. First we will finish with the SUD_SETVALUE messa…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question