Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. How to change the Title(Caption) of Modal Dialog Box?

How to change the Title(Caption) of Modal Dialog Box?

Scheduled Pinned Locked Moved C / C++ / MFC
tutorialquestionlearning
21 Posts 7 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M mikert_2008

    Hi, I have the dialog box. Which I am using as Modal dialog box with DoModal functionality. I need to change the Title(Caption) of dialog box before calling the domodal(). Since I am deciding the title of dialog box at run time I can't use the resource setting. One way I know to change the title of Modal Dialog Box is to use OnInitDialog() function of the class derived from the DialgBox and then call setwindowtext() function inside it. But I want to change the title/cation without using OnInitDialog as the project I am working doesn't have class derived from it. And doesn't look proper to genrate the class just for this purpose. Can anybody knows the other way of doing it?? Thanks in advance.. Mike.

    D Offline
    D Offline
    David Crow
    wrote on last edited by
    #11

    mikert_2008 wrote:

    ...the project I am working doesn't have class derived from it.

    So what object are you calling DoModal() from?

    "One man's wage rise is another man's price increase." - Harold Wilson

    "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

    "Man who follows car will be exhausted." - Confucius

    M 1 Reply Last reply
    0
    • D David Crow

      mikert_2008 wrote:

      ...the project I am working doesn't have class derived from it.

      So what object are you calling DoModal() from?

      "One man's wage rise is another man's price increase." - Harold Wilson

      "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

      "Man who follows car will be exhausted." - Confucius

      M Offline
      M Offline
      mikert_2008
      wrote on last edited by
      #12

      CDialog dlgAbout(IDD_ABOUTBOX); dlgAbout.DoModal();

      C 1 Reply Last reply
      0
      • D David Crow

        Richard MacCutchan wrote:

        I assume from your comments that this is a Win32 dialog rather than MFC.

        Even though he mentions DoModal()?

        "One man's wage rise is another man's price increase." - Harold Wilson

        "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

        "Man who follows car will be exhausted." - Confucius

        L Offline
        L Offline
        Lost User
        wrote on last edited by
        #13

        OK, guys I misread it, I shall perform a suitable act of self-humiliation in penance! :((

        It's time for a new signature.

        D 1 Reply Last reply
        0
        • L Lost User

          OK, guys I misread it, I shall perform a suitable act of self-humiliation in penance! :((

          It's time for a new signature.

          D Offline
          D Offline
          David Crow
          wrote on last edited by
          #14

          Richard MacCutchan wrote:

          ...I shall perform a suitable act of self-humiliation in penance!

          No, I do not wish to see you dancing on a table wearing a sombrero.

          "One man's wage rise is another man's price increase." - Harold Wilson

          "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

          "Man who follows car will be exhausted." - Confucius

          L 1 Reply Last reply
          0
          • D David Crow

            Richard MacCutchan wrote:

            ...I shall perform a suitable act of self-humiliation in penance!

            No, I do not wish to see you dancing on a table wearing a sombrero.

            "One man's wage rise is another man's price increase." - Harold Wilson

            "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

            "Man who follows car will be exhausted." - Confucius

            L Offline
            L Offline
            Lost User
            wrote on last edited by
            #15

            I've been told my maracas are a sight to behold. :laugh:

            It's time for a new signature.

            D 1 Reply Last reply
            0
            • L Lost User

              I've been told my maracas are a sight to behold. :laugh:

              It's time for a new signature.

              D Offline
              D Offline
              David Crow
              wrote on last edited by
              #16

              You did NOT just say that while I was eating.

              "One man's wage rise is another man's price increase." - Harold Wilson

              "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

              "Man who follows car will be exhausted." - Confucius

              1 Reply Last reply
              0
              • M mikert_2008

                CDialog dlgAbout(IDD_ABOUTBOX); dlgAbout.DoModal();

                C Offline
                C Offline
                Chris Meech
                wrote on last edited by
                #17

                Just an idea to research further. Before you instantiate the dialog, would it not be possible to modify the IDD_ABOUTBOX dialog resource to change the caption property? I don't know how to do that, but that is one thing I would investigate. :)

                Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]

                D 1 Reply Last reply
                0
                • C Chris Meech

                  Just an idea to research further. Before you instantiate the dialog, would it not be possible to modify the IDD_ABOUTBOX dialog resource to change the caption property? I don't know how to do that, but that is one thing I would investigate. :)

                  Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]

                  D Offline
                  D Offline
                  David Crow
                  wrote on last edited by
                  #18

                  I *think* this is what InitModalIndirect() was suggested for. Like you, however, I've not personally tried it.

                  "One man's wage rise is another man's price increase." - Harold Wilson

                  "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

                  "Man who follows car will be exhausted." - Confucius

                  1 Reply Last reply
                  0
                  • M mikert_2008

                    Hi, I have the dialog box. Which I am using as Modal dialog box with DoModal functionality. I need to change the Title(Caption) of dialog box before calling the domodal(). Since I am deciding the title of dialog box at run time I can't use the resource setting. One way I know to change the title of Modal Dialog Box is to use OnInitDialog() function of the class derived from the DialgBox and then call setwindowtext() function inside it. But I want to change the title/cation without using OnInitDialog as the project I am working doesn't have class derived from it. And doesn't look proper to genrate the class just for this purpose. Can anybody knows the other way of doing it?? Thanks in advance.. Mike.

                    D Offline
                    D Offline
                    David Crow
                    wrote on last edited by
                    #19

                    mikert_2008 wrote:

                    ...the project I am working doesn't have class derived from it. And doesn't look proper to genrate the class just for this purpose.

                    Other than looks, what reservations do you have to this approach? Read here for Paul's response to using a CDialog object directly.

                    "One man's wage rise is another man's price increase." - Harold Wilson

                    "Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons

                    "Man who follows car will be exhausted." - Confucius

                    1 Reply Last reply
                    0
                    • M mikert_2008

                      Hi, I have the dialog box. Which I am using as Modal dialog box with DoModal functionality. I need to change the Title(Caption) of dialog box before calling the domodal(). Since I am deciding the title of dialog box at run time I can't use the resource setting. One way I know to change the title of Modal Dialog Box is to use OnInitDialog() function of the class derived from the DialgBox and then call setwindowtext() function inside it. But I want to change the title/cation without using OnInitDialog as the project I am working doesn't have class derived from it. And doesn't look proper to genrate the class just for this purpose. Can anybody knows the other way of doing it?? Thanks in advance.. Mike.

                      A Offline
                      A Offline
                      Aescleal
                      wrote on last edited by
                      #20

                      I had a quick scan through the answers below and you didn't seem that enamoured of any of them as you weren't using/couldn't use MFC. Having said that you've already answered your own question...

                      mikert_2008 wrote:

                      One way I know to change the title of Modal Dialog Box is to use OnInitDialog() function of the class derived from the DialgBox and then call setwindowtext() function inside it.

                      If you look at the MFC documentation or read the source code you'll see that CDialog::OnInitDialog is called in response to a WM_INITDIALOG message being sent to the dialog box. All you have to do in your code is handle WM_INITDIALOG and call SetWindowText at that point. Cheers, Ash

                      1 Reply Last reply
                      0
                      • M mikert_2008

                        Hi, As I mentioned I am not having any Dialog class where I can use the OnInitDialog() function. I want to do it without using it. What I am trying for is the without using separate dialog class for it. Thanks Mike

                        K Offline
                        K Offline
                        KarstenK
                        wrote on last edited by
                        #21

                        if you had an own dialog class you wont need this discussions :rolleyes:

                        Press F1 for help or google it. Greetings from Germany

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups