【问题标题】:Win32 Api - a more dialog-based programWin32 Api - 一个更加基于对话框的程序
【发布时间】:2015-03-02 10:47:54
【问题描述】:

所以,我有一个我制作的文本框(在 win32 中)。

    TextBox = CreateWindowEx(WS_EX_CLIENTEDGE,"EDIT", "Hello you name is: ",
                             WS_BORDER | WS_CHILD | WS_VISIBLE ,
                             140,50,500, 250,
                             hwnd, NULL, NULL , NULL);

我的问题是:如何在“文本框”中添加多个文本

我的程序主要是由我提出的问题和用户的回答组成的。

问题二:如何在用户和计算机之间进行这种“对话”。

最后但同样重要的是,我制作了这些按钮:

    Submit = CreateWindow("BUTTON", "Submit", WS_VISIBLE | WS_CHILD | WS_BORDER,
                          450,320,80,20,
                          hwnd, (HMENU) 1, NULL, NULL);




    SubmitQuestion = CreateWindow("BUTTON", "Inregistreaza raspuns", WS_VISIBLE | WS_CHILD | WS_BORDER,
                                  310,350,150,26,
                                  hwnd, (HMENU) 2, NULL, NULL);



    Next =  CreateWindow("BUTTON", "Next", WS_VISIBLE | WS_CHILD | WS_BORDER,
                         250,320, 80, 20,
                         hwnd, (HMENU) 2, NULL , NULL);

提交有效,但是当我按下下一步时,没有任何反应。用户如何通过点击“NEXT”进入下一个问题,并且当他按下提交他的答案进行注册?

而且,SendMessage 如何包含类(调用函数)---> 我有一个“问题”方法(8),但我不知道如何调用它以使用文本框和win32 语法。

【问题讨论】:

  • 这个 Stack 的网站网络的意图是单独提出单独的问题。尝试一次解决一件事。
  • 您可以继续使用非常基本的 Win32 API,并为文本框创建另一个窗口(例如 stackoverflow.com/questions/7598067/… )。根据您的描述,您可能会发现使用 MFC 更容易,并且有许多在线教程可用于构建听起来像您想要实现的简单、基于对话框的应用程序,例如depts.washington.edu/cmmr/biga/chapter_tutorials/…
  • 我试试看MFC。到那时,我希望我能解决这个问题。
  • 按钮 SubmitQuestionNext 共享相同的 ID。另外,为自己的按钮使用 ID IDOK (1) 和 IDCANCEL (2) 是自找麻烦。

标签: winapi win32-process


【解决方案1】:

您的编辑框需要有一个唯一的 ID(在 hMenu 参数中传递)。如果您打算让编辑框显示多行文本,它还需要具有 ES_MULTILINE 样式。

您的每个按钮也需要有一个唯一的 ID。

您的其他问题不清楚。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多