powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Внедрение обьекта в CommandBar (продолжение)
12 сообщений из 12, страница 1 из 1
Внедрение обьекта в CommandBar (продолжение)
    #34281779
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello !
Пытаюсь внедрить динамический обьект на панель CommandBar (код ниже)

Здесь получаеться несовместимость передаваемых типов
Добавление элемента к обьекту CommandBar предполагает набор
других типов ?
Controls.Add(Type, Id, Parameter, Before, Temporary)
CommndBars - это некий дочерный обьект,
.Add - его локальный метод (вряд-ли он унаследован от родителя)

А как выйти на родителя - у него наверняка будет классические параметры Add ??
Верно - нет ?

Private cmBars As CommandBar
Private WithEvents obPBar As ProgressBar

Private Sub btExes_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
Set obPBar = cmBars.Controls.Add("MSComctlLib.ProgCtrl.2", "obPBar") - ошибка типов
obPBar.Left = 1
obPBar.Top = 1
obPBar.Height = 23
obPBar.Width = 120
obPBar.Visible = True
obPBar.Value = 50
End Sub
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34282233
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это должно быть примерно так
Код: plaintext
1.
2.
3.
4.
5.
6.
    ...
    Set ctl = cmb.Controls.Add(msoControlActiveX) 
    With ctl
        .ControlCLSID = "{35053A22-8589-11D1-B16A-00C0F0283628}"  'Microsoft ProgressBar Control, version 6.0        
        .EnsureControl
        Set obPBar = .QueryControlInterface("{00020400-0000-0000-C000-000000000046}")  'IDispatch InterfaceId
    End With
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34283016
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О !
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34283579
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первая три строки ясна

Что есть ?
ctl.EnsureControl - ??????

и QueryControlInterface - не скажу что такого не видел, но применять и понимать не
приходилось - подскажите !!!!!!!!!!

Set obPBar = ctl.QueryControlInterface("{00020400-0000-0000-C000-000000000046}")


и ругаеться на этот синтаксис (Run-Time error '13': Type mismatch)

Спасибо ..........
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34283698
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HOME_XПервая три строки ясна

Что есть ?
ctl.EnsureControl - ??????
Без этого у меня не выполняется QueryControlInterface
HOME_X
и QueryControlInterface - не скажу что такого не видел, но применять и понимать не
приходилось - подскажите !!!!!!!!!!
Set obPBar = ctl.QueryControlInterface("{00020400-0000-0000-C000-000000000046}")
и ругаеться на этот синтаксис (Run-Time error '13': Type mismatch)

у меня не ругается, проверьте в окне отладки:
Код: plaintext
1.
?TypeName(ctl.QueryControlInterface("{00020400-0000-0000-C000-000000000046}"))
ProgressBar
Я пока не знаю как изменить ширину ProgressBar, он у меня занимат всю возможную ширину.
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34283703
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая версия ProgressBar у вас?
Прилагаю тестовый пример, созданный в Access 2003.
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34286528
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убедил ......
Работаю в VB6
В файле проекта VBP - изменил вид ссылки
Ранее
........
........
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
........
........
Так на панели инструментов VB6 были видны и ProgressBar и StatusBar и осталь-
ные обьекты это библиотеки...................

Сейчас
.........
.........
Reference=*\G{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0#..\..\WINNT\system32\MSCOMCTL.OCX#Microsoft Windows Common Controls 6.0 (SP3)
.........
.........
Объектов не видно на панели VB6, но работает .... (в смысле указатель присвоился,
и ошибки нет - далее пока не пробывал................)

А в чем разница такого и эдакого подключение обьектов ?
Ведь DLL компилиться ......, чего ж она не видит ??????????
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34288881
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получилось в полном обьеме...
На изменение Width реакции нет (в моем случае красиво и удачно)
Может это Align работает, его отключить нельзя ?
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34288889
Ламер Ламерович
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HOME_XПолучилось в полном обьеме...
На изменение Width реакции нет (в моем случае красиво и удачно)
Может это Align работает, его отключить нельзя ?
Не знаю, думал попробовать сделать свой контрол, поместить в CommandBar и посмотреть, но нет времени.
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34288941
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если Вам необходимо могу выложить
Суть - Панель инструментов COM надстройки для Outlook
Работает через FTP протокол (пересылка файлов)

Разработана для особо-ленивых категории пользователей-руководителей
Который привыкли к одной картинке на экране
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34288971
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HOME_XЕсли Вам необходимо могу выложить
Выложите
...
Рейтинг: 0 / 0
Внедрение обьекта в CommandBar (продолжение)
    #34289161
HOME_X
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прилагаю .....
Эти коррдинаты - вот гадость
Дома делал на Offcie 2000 - все нормально
На работе Office XP - высоту расперло (извините господа - буду бороться......)

Строка 111
Items.Height = iStyle
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Внедрение обьекта в CommandBar (продолжение)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]