C Win32:窗口自动关闭

用户名

我想创建一个单词“ corrupter”,实际上只是用一些ascii字母替换了一些字母。但是,当按下“生成”按钮时,该窗口会自动关闭

static HANDLE ghInstance;

HWND hwndEDIT;
int index[10];

static INT_PTR CALLBACK MainDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    switch (uMsg)
    {
        case WM_INITDIALOG:
        {
            hwndEDIT = GetWindow(hwndDlg, IDC_EDIT);

            return TRUE;
        }

        case WM_SIZE:
            /*
             * TODO: Add code to process resizing, when needed.
             */
            return TRUE;

        case WM_COMMAND:
            switch (GET_WM_COMMAND_ID(wParam, lParam))
            {
                case IDC_GENERATE:
                {
                    char input[1000];
                    char output[1000][10];

                    int i, strLength, m, map;
                    int rNmb;
                    int chance;

                    GetWindowText(hwndEDIT, input, 1000);

                    srand(time(NULL));

                    strLength = strlen(input);

                    for(m=0;m<10;m++)
                    {
                        map = 0;
                        strcpy(output[m], input);
                        for(i=0;i<strLength;i++)
                        {
                            switch(output[m][i])
                            {
                                case '\0':
                                    continue;

                                case '\n':
                                    continue;

                                case ' ':
                                    continue;
                            }

                            chance = rand() % 100;

                            if(chance < 25)
                            {
                                rNmb = (rand() % 128) + 128;

                                output[m][i] = rNmb;
                            }
                        }
                        index[m] = SendDlgItemMessage(hwndDlg , IDC_LISTBOX, LB_ADDSTRING, 0, (LPARAM)output[m]);

                        map++;
                        SendDlgItemMessage(hwndDlg, IDC_LISTBOX, LB_SETITEMDATA, (WPARAM)index[m], (LPARAM)map);
                    }
                }
                case IDC_CLOSE:
                    EndDialog(hwndDlg, TRUE);
                    return TRUE;
            }
            break;

        case WM_CLOSE:
            EndDialog(hwndDlg, 0);
            return TRUE;

        /*
         * TODO: Add more messages, when needed.
         */
    }

    return FALSE;
}

我看不到“生成”按钮和“关闭”命令之间的任何链接

2501

您缺少中断声明。

案件case IDC_GENERATE直接属于:

case IDC_CLOSE:
    EndDialog(hwndDlg, TRUE);
    return TRUE;

您可以使用函数使代码可读,并且可能会捕获此错误。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么单击编辑框关闭Win32窗口(C ++)?

来自分类Dev

c ++ Win32多个窗口执行相同的操作

来自分类Dev

在win32 C ++编程中,要关闭窗口,我应该自己调用DestroyWindow(hWnd)还是SendMessage(WM_CLOSE,hWnd,0,0)?

来自分类Dev

C ++,Win32错误

来自分类Dev

Win32窗口立即关闭

来自分类Dev

使用C ++ Win32 GUI在窗口中显示文本

来自分类Dev

Win32 C ++将窗口位置设置为右下角

来自分类Dev

在Win32上处理CTRL + C

来自分类Dev

C ++ NetBeans Win32 hwnd图标

来自分类Dev

C ++ Win32:加速位图操作

来自分类Dev

我的Visual C ++ Win32中有一个无法关闭的MessageBox!到底是怎么回事?

来自分类Dev

如何在不使用C语言的system()的情况下清除win32 cmd控制台窗口?

来自分类Dev

如何在不使用C语言的system()的情况下清除win32 cmd控制台窗口?

来自分类Dev

如何使用C#访问UI Spy无法看到的元素以自动化Win32应用程序

来自分类Dev

Win32控制台写入(C / C ++)

来自分类Dev

Poco C ++库和Win32 GUI集成

来自分类Dev

在C ++ Win32程序中,如何修改菜单标题?

来自分类Dev

Win32 API C ++菜单栏

来自分类Dev

Win32 C ++ BitBlt透明度

来自分类Dev

Win32 C ++可以重新使用“旧位图”吗?

来自分类Dev

Win32(C ++)中的选项卡损坏

来自分类Dev

Win32 C ++检测USB驱动器损坏

来自分类Dev

C ++ Win32 Api资源文件

来自分类Dev

使用C ++ Win32 API启用视觉样式吗?

来自分类Dev

C中的win32 FillRect()函数问题

来自分类Dev

C ++ Win32侦听全局按键绑定

来自分类Dev

使用mingw在win32上使用C printf()

来自分类Dev

我的Win32 C ++“ Hello World程序”无法编译

来自分类Dev

C Win32 API:设置复选框的状态

Related 相关文章

热门标签

归档