MFC

  Home  Computer Programming  MFC


“Microsoft Foundation Class (MFC) frequently Asked Questions in various MFC job Interviews by interviewer. Get preparation of Microsoft Foundation Class (MFC) job interview”



26 MFC Questions And Answers

2⟩ What is CTargetObject?

In general, TargetObject is the object where you will get

the sorted result.

If you want to specific answer please update the context

and details of question like Grid or Array

 177 views

5⟩ Visual Programming c++ coding for create a paint application?

class myframe:public CFrameWnd

{

public:

myframe()

{

Create(NULL,"My Paint application");

}

void OnPaint()

{

CPaintDC d(this);

CBrush mybrush(RGB(0,255,0));

d.SelectObject(&mybrush);

d.Rectangle(50,150,150,50);

}

DECLARE_MESSAGE_MAP()

};

BEGIN_MESSAGE_MAP(myframe,CFrameWnd)

ON_WM_PAINT()

END_MESSAGE_MAP()

class myapp:public CWinApp

{

public:

int InitInstance()

{

myframe *p=new myframe;

p->ShowWindow(1);

m_pMainWnd=p;

return 1;

}

};

myapp a;

 172 views

6⟩ How to give color for dialog button or static buuto?

Brush *brush;

Initialize the brush pointer in the constructor of your Dialog

Code:

brush = new CBrush(RGB(49,49,49));

Add the WM_CTLCOLR Message handler for the dialog and add the following code

Code:

switch (nCtlColor) {

case CTLCOLOR_BTN:

pDC->SetTextColor(RGB(0, 255, 0));

pDC->SetBkColor(RGB(0, 0, 0));

return (HBRUSH)(brush->GetSafeHandle());

default:

return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

}

 160 views

8⟩ What is primitive and non-primitive application?

primitive & non-primitive type are difference thing,primitive is the well defined data,we can't modified this type of data,but in non-primtive type as a user defined of data which store reference or object data,bcz they are created rather then per-defind

 164 views

9⟩ List out the basic features of MFC?

new container

polymorphic wrapping

expression passing

Smart Pointer

1.Application Framework: The MFC library framework includes its own application structure-one that has been proved in many software environments.App wizard generates skeleton code for your entire application, and class wizard generates prototypes and function bodies for message handlers.

2.Message Mapping

3.Runtime class information

4.Serialization

 161 views

11⟩ What is a message map?

Message map is dynamic function locater

It can look each function if it defined

e.g

void OnWndMessage(UINT message, WPARAM wParam, LPARAM

lParam, LRESULT *pResult)

{

// function looking MESSAGE_MAPS ((DECLARED))

// if found, CWnd::OnSize(UINT nStyle, int cx, int cy);

__thisclass.OnSize(wParam, HIWORD(lParam), LOWORD(lParam);

}

//M

 164 views

12⟩ How you find memory leaks?

There many ways to find memory leaks, One of the ways is by

using MFC class. And another way is using Purify tools...

CMemorState is a MFC class by which we can find the memory

leaks. Below is a sample code to find the same.

#ifdef _DEBUG

CMemoryState oldState, newState, diffState;

oldState.Checkpoint();

#endif

int* a = new int[10];

#ifdef _DEBUG

newState.Checkpoint();

if(diffState.Difference(oldState, newState))

{

TRACE0("Memory Leaked");

}

#endif

 169 views

14⟩ How we call a dialog in another dialog?

Using DoModal() function.

create a class of another dialog box.

and write a code in fist dialog box function.

Classname(second) variable_name;

variable_name.DoModl();

and define the new header file in fisrt dialog bob code.

like;

#include "classname.h"

 165 views

15⟩ How to create a button dynamically?

1. Create a Object from CButton control. CButton m_ctlButton

2. m_ctlButton.Create("OK",ES_CHILD|ES_VISIBLE,CRect(0,0,100,100),CWnd*

pParentWnd,MB_OK);

with this we can create the button by dynamically.

 154 views

17⟩ What is the use of CCmdTarget?

CCmdTarget class used to process window message, any class directly or indirectly inherited from CCmdTarget will eligible for message handling..

 172 views

18⟩ How can update edit control data of an executing application from other application?

First, need to find the handle of the Control by using some API like EnumWindows and enumerrating all windows and checking for the text of the window by GetWindowTExt.

Once, handle of the target control has been identified, SendMessage can be used to send appropriate message to the control. like WM_SETTEXT can be sent to change text of window, etc...

 163 views

20⟩ what is the use of CWinApp class?

CWinApp is an application object provides member functions

for initializing your application (and each instance of it)

and for running the application.

Each application that uses the Microsoft Foundation classes

can only contain one object derived from CWinApp. This

object is constructed when other C++ global objects are

constructed and is already available when Windows calls the

WinMain function, which is supplied by the Microsoft

Foundation Class Library. Declare your derived CWinApp

object at the global level.

When you derive an application class from CWinApp, override

the InitInstance member function to create your

application's main window object.

In addition to the CWinApp member functions, the Microsoft

Foundation Class Library provides the following global

functions to access your CWinApp object and other global

information:

► AfxGetApp Obtains a pointer to the CWinApp object.

► AfxGetInstanceHandle Obtains a handle to the current

application instance.

► AfxGetResourceHandle Obtains a handle to the

application's resources.

► AfxGetAppName Obtains a pointer to a string containing

the application's name. Alternately, if you have a pointer

to the CWinApp object, use m_pszExeName to get the

application's name.

 162 views