Модальность Msgbox !

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Модальность Msgbox !

Сообщение EvilCoder » 28.07.2004 (Ср) 22:28

:arrow: <DELETE> :twisted: :twisted:
Последний раз редактировалось EvilCoder 25.08.2006 (Пт) 15:08, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

Approximator
Постоялец
Постоялец
 
Сообщения: 572
Зарегистрирован: 26.06.2004 (Сб) 3:10

Re: Модальность Msgbox !

Сообщение Approximator » 29.07.2004 (Чт) 7:29

EvilCoder писал(а):Как избежать модальности Msgbox... :roll:

Заведи свою форму.
С уважением, Approximator.

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 29.07.2004 (Чт) 10:37

:arrow: <DELETE> :twisted: :twisted:
Последний раз редактировалось EvilCoder 25.08.2006 (Пт) 15:09, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 29.07.2004 (Чт) 10:46

Покажи его через API и в качестве родителя укажи NULL
Lasciate ogni speranza, voi ch'entrate.

TEH3OP
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 143
Зарегистрирован: 12.12.2003 (Пт) 20:19
Откуда: Москва

Простите, не выдержал...

Сообщение TEH3OP » 30.07.2004 (Пт) 15:29

alibek писал(а):Покажи его через API и в качестве родителя укажи NULL


Нуна сделать новый проект и на форме одну кнопку "Command1".

Вот так:
Код: Выделить всё
Private Enum MB_Enum
    MB_ABORTRETRYIGNORE = &H2&
    MB_APPLMODAL = &H0&
    MB_CANCELTRYCONTINUE = &H6&
    MB_COMPOSITE = &H2
    MB_DEFAULT_DESKTOP_ONLY = &H20000
    MB_DEFBUTTON1 = &H0&
    MB_DEFBUTTON2 = &H100&
    MB_DEFBUTTON3 = &H200&
    MB_DEFBUTTON4 = &H300&
    MB_DEFMASK = &HF00&
    MB_ERR_INVALID_CHARS = &H8
    MB_FUNC = &H4000
    MB_HELP = &H4000&
    MB_ICONASTERISK = &H40&
    MB_ICONERROR = &H10&
    MB_ICONEXCLAMATION = &H30&
    MB_ICONINFORMATION = MB_ICONASTERISK
    MB_ICONMASK = &HF0&
    MB_ICONQUESTION = &H20&
    MB_ICONSTOP = &H10&
    MB_ICONWARNING = MB_ICONEXCLAMATION
    MB_MISCMASK = &HC000&
    MB_MODEMASK = &H3000&
    MB_NOFOCUS = &H8000&
    MB_OK = &H0&
    MB_OKCANCEL = &H1&
    MB_PRECOMPOSED = &H1
    MB_RETRYCANCEL = &H5&
    MB_RIGHT = &H80000
    MB_RTLREADING = &H100000
    MB_SERVICE_NOTIFICATION = &H40000
    MB_SERVICE_NOTIFICATION_NT3X = &H40000
    MB_SETFOREGROUND = &H10000
    MB_SYSTEMMODAL = &H1000&
    MB_TASKMODAL = &H2000&
    MB_TYPEMASK = &HF&
    MB_USEGLYPHCHARS = &H4
    MB_USERICON = &H80&
    MB_YESNO = &H4&
    MB_YESNOCANCEL = &H3&
End Enum

Private Declare Function MessageBox Lib "user32.dll" Alias "MessageBoxW" (ByVal hwnd As Long, ByRef lpText As Byte, ByRef lpCaption As Byte, ByVal wType As MB_Enum) As Long

Private Sub Command1_Click()
    Dim lngAPIReturn As Long
    Dim abytText() As Byte
    Dim abyteCaption() As Byte
   
    abyteCaption = "Вот в чём вопрос!" & vbNullChar
    abytText = "Быть или не быть?" & vbNullChar
               
    MessageBox 0&, abytText(0), abyteCaption(0), MB_ICONQUESTION + MB_YESNO
End Sub


EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 31.07.2004 (Сб) 12:38

:arrow: <DELETE> :twisted: :twisted:
Последний раз редактировалось EvilCoder 25.08.2006 (Пт) 15:10, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 31.07.2004 (Сб) 13:44

Так значение функции-то...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 31.07.2004 (Сб) 15:14

:arrow: <DELETE> :twisted: :twisted:
Последний раз редактировалось EvilCoder 25.08.2006 (Пт) 15:11, всего редактировалось 1 раз.
<<------- EvilCoder ------->>

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 01.08.2004 (Вс) 15:09

Ну почему?
Код: Выделить всё
Retval = MessageBox(0&, abytText(0), abyteCaption(0), MB_ICONQUESTION + MB_YESNO)
Это ж ведь функция :roll:

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 01.08.2004 (Вс) 15:30

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

EvilCoder
Посланец джихада
Посланец джихада
Аватара пользователя
 
Сообщения: 706
Зарегистрирован: 25.01.2004 (Вс) 15:08

Сообщение EvilCoder » 01.08.2004 (Вс) 21:43

:arrow: <DELETE> :twisted: :twisted:
<<------- EvilCoder ------->>


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 28

    TopList  
cron