Тема: Кнопки окна

Добрый день, уважаемые Знатоки.
Подскажите пожалуйста как в форме Besica удалить все кнопки работы с окном (свернуть, развернуть, закрыть).  У меня версия Autocad 2006.

Re: Кнопки окна

В дизайне формы
ControlBox = False
В ран тайме это не работает.

Re: Кнопки окна

Спасибо за ответ, но в свойствах формы у этого Basica в графах Properties-UserForm вообще нет этого параметра.
Подскажите пожалуйста, как до него добраться.
Наверное в разных модификациях это свойство устанавливается по разному. Я прочитал, что если в свойстве BorderStyle установить 0, то окно не будет иметь заголовка и элементов управления, но это у меня не действует.

Re: Кнопки окна

Понятно вы имели ввиду VBA.
Тогда привожу пример отключений кнопки закрытия формы. Проверил на VBA работает. У UserForm нет метода возвращающего hWnd, поэтому обошел это через Заголовок окна (Me.Caption), минус данного метода в том что Вам необходимо следить за уникальностью заголовка окна.

Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, _
    ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, _
    ByVal nPosition As Long, _
    ByVal wFlags As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" ( _
    ByVal lpClassName As String, _
    ByVal lpWindowName As String) As Long
Public Sub RemoveCloseMenu(capt As String)
    Dim hSysMenu As Long
    hSysMenu = GetSystemMenu(FindWindow(vbNullString, capt), 0)
    Call RemoveMenu(hSysMenu, 6, &H400&)
    Call RemoveMenu(hSysMenu, 5, &H400&)
End Sub
Private Sub UserForm_Click()
 Unload Me 'позже удалить
End Sub
Private Sub UserForm_Initialize()
  RemoveCloseMenu Me.Caption
End Sub

Re: Кнопки окна

Большое спасибо!
А как отключить эти кнопки не программно, а ВРУЧНУЮ?
Я не знаю как найти в настройках дизайна формы, пункт отвечающий за наличие этих кнопок управления.

Re: Кнопки окна

> Андрей (2007-02-19 15:14:36)
А как отключить эти кнопки не программно, а ВРУЧНУЮ?

Перейти с VBA на VB. Там эти кнопки легко отключаются вручную.

Re: Кнопки окна

Спасибо !

Re: Кнопки окна

Подкину соли.
можно и на VBA это сделать, но слишком накладно многое писать нужно самому для начала вот API построения окна.

Declare Function CreateWindowEx Lib "user32" Alias "CreateWindowExA" (ByVal dwExStyle As Long, _
   ByVal lpClassName As String, _
   ByVal lpWindowName As String, _
   ByVal dwStyle As Long, _
   ByVal x As Long, _
   ByVal y As Long, _
   ByVal nWidth As Long, _
   ByVal nHeight As Long, _
   ByVal hWndParent As Long, _
   ByVal hMenu As Long, _
   ByVal hInstance As Long, _
   lpParam As Any) _
   As Long

а дальше уже по контексту задачи :)