Как Вы делаете MsgBox с, “Не Просят, чтобы Это Снова” или “не Спрашивало Меня Снова” Флажок в VB6?

Есть что-то лучше, чем проверить, есть ли у них сенсорный экран, это проверить, используют ли они его, плюс это легче проверить.

if (window.addEventListener) {
    var once = false;
    window.addEventListener('touchstart', function(){
        if (!once) {
            once = true;
            // Do what you need for touch-screens only
        }
    });
}
8
задан 28 August 2009 в 19:25
поделиться

3 ответа

Насколько я знаю, другого пути нет. Вам нужно создать собственную форму окна сообщения с флажком. Конечно, вам также потребуется изменить код для сохранения и извлечения этого параметра (и действий в соответствии с настройкой).

Я делал это в своем собственном приложении много раз. Одна вещь, о которой нужно подумать ... предположим, пользователь установил флажок "больше не показывать мне это". На мой взгляд, должен быть способ сбросить настройки. Поскольку форма окна сообщения больше не будет отображаться, я добавил это в форму конфигурации (для моего приложения).

Одна вещь, которую вы, возможно, захотите рассмотреть, - это подклассы функции MSGBOX. Вы можете создать в своем приложении функцию с аналогичным списком параметров, но с парочкой дополнительных. Если дополнительные параметры отсутствуют, просто вызовите vba.MsgBox (для получения стандартного поведения).

9
ответ дан 5 December 2019 в 10:04
поделиться

Если вы предоставите такой функционал может потребовать "включения" т.е. у пользователя должна быть возможность снова увидеть окно сообщений, используя некоторые настройки.

Вместо этого вы можете использовать строку состояния для отображения уведомлений ИЛИ иметь ярлык с сообщениями уведомлений и выключить его через несколько секунд.

0
ответ дан 5 December 2019 в 10:04
поделиться

Ну ... Вы не совсем правы, ребята;)

Начиная с Win2000, есть функция SHMessageBoxCheck , которая помогает. Объявление VB6:

Private Declare Function SHMessageBoxCheck Lib "shlwapi" Alias "#185" (ByVal hWnd As Long, ByVal lpszText As String, ByVal lpszTitle As String, ByVal dwType As VbMsgBoxStyle, ByVal iDefault As Long, ByVal lpszId As String) As Long

Для всего остального перейдите по ссылке:)

8
ответ дан 5 December 2019 в 10:04
поделиться