www.map-info.ru :: Просмотр темы - Проблема с меню и тулбарами в MapInfo10 OLE Autоmation
                               РќР° главную страницу сайта

 
                                
ВходВход    РегистрацияРегистрация    ПрофильПрофиль    ПользователиПользователи    ГруппыГруппы    FAQFAQ    ПоискПоиск  

 
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Предыдущая тема :: Следующая тема  
Автор Сообщение
karfaqen



Зарегистрирован: 25.10.2011
Сообщения: 4

СообщениеДобавлено: Вт Окт 25, 2011 5:42 pm    Заголовок сообщения: Проблема с меню и тулбарами в MapInfo10 OLE Autоmation Добавить ответ со ссылкой на данный текст

Речь про MapInfo Professional версии 10.52

[1]
В MapBasic создаю mbx, там в процедуре Main:
a) делаю свой тулбар (Create ButtonPad...)
b) отображаю штатные станки (Alter ButtonPad...)

[2]
Если открываю MapInfo и руками через меню "Программы" выбираю и запускаю этот mbx - все станки на месте - ровно как и ожидается.

[3]
А ВОТ ЕСЛИ пытаюсь автоматизировать быт - в стороннем коде (VBA msAccess) через OLE Automation создаю объект класса "MapInfo.Application" и методом Do запускаю вышеуказанный mbx (Run Application...)
---
то имею ПРОБЛЕМУ: открывается окно MapInfo БЕЗ признаков жизни - ни одного тулбара, ни менюбара (в простейшем общем случае)
---

[4]
При этом, описанный в пункте [3] способ в более РАННЕЙ версии MapInfo (в частности в 7.5) работает честно без описанных проблем.


В связи с этим вопрос:
Сталкивался ли кто с подобным поведением версии 10?
Как это можно побороть?

Или же я что-то не доделываю?
Подскажите, кто в курсе, будьте добры.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Вт Окт 25, 2011 9:17 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Не понял, в OLE вообще MapInfo стартует без всяких тулбаров. Если вы конечно создаете MapInfo.Application, а не прицепляетесь к нему через GetActiveOleObject.
Покажите скрины того как работало в 7.5, чтобы было понятно.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
karfaqen



Зарегистрирован: 25.10.2011
Сообщения: 4

СообщениеДобавлено: Чт Окт 27, 2011 4:59 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Андрей Могильный писал(а):
в OLE вообще MapInfo стартует без всяких тулбаров. Если вы конечно создаете MapInfo.Application
Спасибо за отклик, Андрей.

Да, я его создаю именно как новый объект указанного класса:
Код:
Dim mio as Object
Set mio = CreateObject("MapInfo.Application")

То что он БЕЗ тулбаров стартует - это нормально. Я же в mbx все тулбары, какие мне надо, как раз и создаю/отображаю. Собственно, на это и расчет. Жалоба была про то, что в mapinfo10.5 я НЕ вижу то, что только что отобразил в коде mbx (а в mapinfo7.5 вижу).


Вобщем, в результате разбирательств обнаружил, что тулбары и меню теряются у меня при определенных обстоятельствах в момент установки свойства Visible этого самого моего объекта, который MapInfo.Application.

Так что на данный момент, зная причину, вроде как поборол следствие. Просто осадок остался от различного поведения версий в таком, казалось бы, "НЕспорном" месте. После таких заходов подобных вариаций можно ожидать где угодно, поди.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Андрей Могильный



Зарегистрирован: 21.03.2006
Сообщения: 864

СообщениеДобавлено: Пт Окт 28, 2011 7:22 pm    Заголовок сообщения: Добавить ответ со ссылкой на данный текст

Понятно. Ну между 7.5 и 10.5 был переход на .NET, возможно там и "ковырнули" чего-то.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Показать сообщения:   
   Список форумов www.map-info.ru | Форум - программирование в среде MapInfo Добавить ответ
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Top.Mail.Ru