Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: VBA (Excel) Добавлено: 11.09.02 12:48  

Автор вопроса:  Alexa_SAS

Подскажите Как убрать Close Button из User Form или запретить его действие?

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 Petrovich



Вопросов: 9
Ответов: 84
 Профиль | | #1 Добавлено: 11.09.02 14:02

Привет. Насколько я знаю, никак. Т.е. стандартными способами у меня не получилось. Возможно, этого можно добиться с помощью API.

Ответить

Номер ответа: 2
Автор ответа:
 Alexa_SAS



Вопросов: 11
Ответов: 12
 Профиль | | #2 Добавлено: 11.09.02 14:41

Privet, Petrovich :-)

Zhal, chto nikak, t.k. mne ochen nugno

No vse ravno, spasibo za otklik - You The Only One,

kto mne zdes otvechaet (Interesno Pochemu?)

Ответить

Номер ответа: 3
Автор ответа:
 Petrovich



Вопросов: 9
Ответов: 84
 Профиль | | #3 Добавлено: 11.09.02 15:18

I think because we both use VBA (Excel) :0)

Ответить

Номер ответа: 4
Автор ответа:
 Alexa_SAS



Вопросов: 11
Ответов: 12
 Профиль | | #4 Добавлено: 11.09.02 15:43

It's just Nesessary  :-)

MSoffice has Everyone, so i can modify it Everywhere and i not Use Basic so Hard that i must Use VB as onw language

Sorry about my Englich :)

Ответить

Номер ответа: 5
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #5
Добавлено: 14.09.02 04:02

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
Cancel = -1
End Sub

Заработался наверное :)

Ответить

Номер ответа: 6
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #6
Добавлено: 14.09.02 05:47

Смотри что ещё откопал.

Гайдар Магдануров

Затемнение кнопки закрыть

Я приведу здесь некий код, который должен затемнять кнопку закрыть на вашей форме. Все это я оформлю в виде sub-а расположенного в модуле.

Сначала константы:

Const MF_BYPOSITION = &H400
Const MF_REMOVE = &H1000

Потом объявление функций:

Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
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

Теперь сама процедура:

Public Sub Disable_Close(Form_hWnd As Long)
Dim Menu_hWnd, Number_Of_MenuItems As Long
'Декларируем переменных
Menu_hWnd = GetSystemMenu(Form_hWnd, 0)
'Получения описателя системного меню
If Menu_hWnd Then
'Если получилось получить описатель системного меню, то выполнять код
Number_Of_MenuItems = GetMenuItemCount(Menu_hWnd)
'
Получение количества пунктов меню
Call RemoveMenu(Menu_hWnd, Number_Of_MenuItems - 1, MF_BYPOSITION)
'
Удаление меню Закрыть
Call RemoveMenu(Menu_hWnd, Number_Of_MenuItems - 2, MF_REMOVE)

Call DrawMenuBar(Form_hWnd)
'Перерисовка системного меню
End If
'
Если не получилось получить описатель системного меню, то ничего не происходит

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам