Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 158
от 15.11.2005, 13:51

Администратор:Калашников О.А.
В рассылке:Подписчиков: 122, Экспертов: 21
В номере:Вопросов: 2, Ответов: 5


Вопрос № 29254: Извините уважаемые эксперты за неправильно заданный вопрос № 29104. Я в Excel в редакторе VBA создал форму, которая будет отображаться при активизации на несколько секунд, и хотел чтобы небыло видно кнопку закрыть вверху формы Me.ControlBox = false н...
Вопрос № 29281: Уважаемые эксперты! В VB в настройках цветов (инструменты-опции-editor format) есть выбор: разрыв в тексте, текст индефикатора,текст закладки,вызвать текст. Что это за тексты (остальные я знаю)?...

Вопрос № 29.254
Извините уважаемые эксперты за неправильно заданный вопрос № 29104. Я в Excel в редакторе VBA создал форму, которая будет отображаться при активизации на несколько секунд, и хотел чтобы небыло видно кнопку закрыть вверху формы Me.ControlBox = false не работает.
Отправлен: 09.11.2005, 16:17
Вопрос задал: Евгений (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: AlexanderZh
Здравствуйте, Евгений!
Если я правильно понял - то это свойство работает только в конструкторе
(или в нем же поэксперементируй со свойством BorderStyle, на сколько помню - если без бордюра - то нет заголовка окна, а следовательно и кнопок закрытия и прочих)
Ответ отправил: AlexanderZh (статус: 1-ый класс)
Отправлен: 09.11.2005, 17:44

Отвечает: Залетин Виталий Викторович
Здравствуйте, Евгений!
Убрать ее совсем не выйдет, но предлагаю сделать недоступной:
На форме разместите кнопку с именем "CommandButton1", форме (свойство Caption) присвойте значение "frm" (все без кавычек)

Далее код:
Private Declare Function FindWindowA Lib "user32" (ByVal s1 As String, ByVal s2 As String) As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long

Const MF_BYPOSITION = &H400&
Const MF_REMOVE = &H1000&

Private Sub CommandButton1_Click()
Dim w As Long
Dim hSysMenu As Long, nCnt As Long


w = FindWindowA(vbNullString, "frm")
hSysMenu = GetSystemMenu(w, False)
If hSysMenu Then
nCnt = GetMenuItemCount(hSysMenu)
If nCnt Then
RemoveMenu hSysMenu, nCnt - 1, MF_BYPOSITION Or MF_REMOVE
RemoveMenu hSysMenu, nCnt - 2, MF_BYPOSITION Or MF_REMOVE
DrawMenuBar w
End If
End If
End Sub

Небольшое пояснение: тут испоьзуется метод получения кол-ва пунктов системного меню и удаляется последний. Хотя в нормальном VB можно вместо этого указать просто константу SC_CLOSE=6.
---------
Учиться никогда не поздно. Особенно программированию!
Ответ отправил: Залетин Виталий Викторович (статус: 7-ой класс)
Отправлен: 12.11.2005, 14:35
Оценка за ответ: 5
Комментарий оценки:
Спасибо! Всё заработало.


Вопрос № 29.281
Уважаемые эксперты! В VB в настройках цветов (инструменты-опции-editor format) есть выбор: разрыв в тексте, текст индефикатора,текст закладки,вызвать текст. Что это за тексты (остальные я знаю)?
Отправлен: 10.11.2005, 01:54
Вопрос задал: Александр А.А. (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: AlexanderZh
Здравствуйте, Александр А.А.!
Вот только переводить не стоило - едва улавливаешь смысл...
разрыв в тексте это я понимаю breakpoint - строка на которой прервалось выпонение программы (например по stop)
Identifer - это Ваши переменные, названия объектов, функций и тд...
Закладка - цвет метки на полях (можно в тексте проги ставить закладки - из контекстного тебю - toggle > bookmark)
Call Return - то место куда вернется управление после вызова функции или подпрограммы
p.s. А может у Вас basic руссифицированный?
Ответ отправил: AlexanderZh (статус: 1-ый класс)
Отправлен: 10.11.2005, 11:40
Оценка за ответ: 4
Комментарий оценки:
русифицированный

Отвечает: Miklucho
Здравствуйте, Александр А.А.!
Надо было на английском и писать названия, а то не очень понятно.
Текст идентификатора (Identifier Text) цвет переменных
разрыв в тексте (Breakpoint Text?) - цвет строки на которой останавливается выполнение проги после прерывания (например по Ctrl+Break).
Bookmark Text - цвет закладки, на поле слева от кода можно ставить какие-то отметки (правый клик->Toggle->Bookmark), зачем они не знаю.
Ответ отправил: Miklucho (статус: Студент)
Отправлен: 10.11.2005, 19:05
Оценка за ответ: 4
Комментарий оценки:
русифицированный

Отвечает: Залетин Виталий Викторович
Здравствуйте, Александр А.А.!
Цвет идентификатора - это цвет, которым выводятся Ваши переменные.
Разрыв в тексте - это, наверное, точка останова.
Текст закладки - он и есть.
Вызвать текст - это, наверное, цвет текста при пошаговой.

Переводчики явно не очень... Лучше пользуйтесь английской IDE - она все-таки програмисту понятней и глюков помельче, тем более, что, например, у меня есть русифицированный VB, но там почти все сообщения на буржуйском. Вообщето они зависят еще и от вида ошибки... Так что смысла в русификации я не вижу...
---------
Учиться никогда не поздно. Особенно программированию!
Ответ отправил: Залетин Виталий Викторович (статус: 7-ой класс)
Отправлен: 12.11.2005, 14:18
Оценка за ответ: 4
Комментарий оценки:
Вызвать текст - не пошаговая


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.



© 2001-2005, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Яндекс Rambler's Top100 hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=314124&im=101&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("HotLog")

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.basicvba
Архив рассылки
Отписаться
Вспомнить пароль

В избранное