MessageBox case для Ok Отмена? - PullRequest
       35

MessageBox case для Ok Отмена?

1 голос
/ 08 августа 2011

как я могу сделать "кейсы" для следующего кода:

win32api.MessageBox(None,
                    "This Program Will do THIS:\n"
                    "blablabla",
                    "programtitler",
                    win32con.MB_OKCANCEL | win32con.MB_ICONQUESTION)

например

если выбрано ОК, сделай ЭТО, если выбери отмену, сделай ЭТО.

Ответы [ 2 ]

4 голосов
/ 08 августа 2011

Должно быть что-то вроде этого. (С #)

    int result = win32api.MessageBox(None,
                        "This Program Will do THIS:\n"
                        "blablabla",
                        "programtitler",
                        win32con.MB_OKCANCEL | win32con.MB_ICONQUESTION)

    switch (result)
    {
        case win32con.MB_IDOK: 
        //OK Selected.
        //put 'ok' code here.
        break;
        case win32con.MB_IDCANCEL:
        //Cancel Selected.
        //put 'Cancel' code here.
        break;
    }

Не разбирается в python, но вы должны иметь возможность просто использовать операторы вместо переключателя, например так:

    if result == win32con.MB_IDOK:
        //put 'ok' code here
    elif result == win32con.MB_IDCANCEL:
        //put 'cancel' code here
0 голосов
/ 08 августа 2011

Согласно MSDN , возвращаемое значение будет значением выбранной кнопки. Так что вам нужно будет это проверить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...