• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 978
  • Last Modified:

Windows MFC Application: How do I get user input without using CDialog?

I have a  WIndows MFC application. I need to display a MessageBox with OK, Cancel, and take a 10 digit numeric code from user and use it if user clicks OK. How can I do this without using CDialog?
0
Vakils
Asked:
Vakils
  • 3
2 Solutions
 
Subrat (C++ windows/Linux)Software EngineerCommented:
Then you have to create your own InputBox() using C, WIN32 APIs. and use GetWindowText() or something siillar APIs to get the text from text box. As I know, in BuilderXE there is API for your purpose. But in Visual studio, MFC there is no such direct APIs available. But you can create a custom one.
0
 
VakilsDeveloperAuthor Commented:
If so, then it seems CDialog is the only easy way to go as the application uses MFC.
0
 
ZoppoCommented:
Hi vakils,

why do you want to implement a input dialog without using CDialog? It's the easiest and recommended way to implement any kind of dialog with MFC.

Of course you can implement a modal dialog without CDialog using DialogBox WIN32 API function, in this case you have to write your own code to create the dialog and you have to implement a message handler function (DLGPROC). This is some effort you can simply avoid using CDialog.

ZOPPO
0
 
VakilsDeveloperAuthor Commented:
Agreed. I was hoping MS would be having an extended AfxMessageBox  which would take input. CDialog is way to go.
0
 
VakilsDeveloperAuthor Commented:
Implemented CDialog derived class. Thanks for clarifying and confirming.
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now