Внедренные объекты

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Внедренные объекты

Сообщение TimeKeeper » 16.03.2003 (Вс) 14:19

Если я, например, внедрил Диаграмму Excel'я, как мне теперь ее изменять?

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 17.03.2003 (Пн) 11:00

Что никто не знает?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 17.03.2003 (Пн) 11:50

DoVerb тебя спасет, однозначно:



Visual Basic Reference



DoVerb Method



Opens an object for an operation, such as editing. Doesn't support named arguments.



Syntax



object.DoVerb (verb)



The DoVerb method syntax has these parts:



Part Description

Object An object expression that evaluates to an object in the Applies To list.

Verb Optional. The verb to execute of the object within the OLE container control. If not specified, the default verb is executed. The value of this argument can be one of the standard verbs supported by all objects or an index of the ObjectVerbs property array.





Remarks



If you set the AutoActivate property to 2 (Double-Click), the OLE container control automatically activates the current object when the user double-clicks the control.



Each object can support its own set of verbs. The following values represent standard verbs every object should support:



Constant Value Description

VbOLEPrimary 0 The default action for the object.

VbOLEShow -1 Activates the object for editing. If the application that created the object supports in-place activation, the object is activated within the OLE container control.

VbOLEOpen -2 Opens the object in a separate application window. If the application that created the object supports in-place activation, the object is activated in its own window.

VbOLEHide -3 For embedded objects, hides the application that created the object.

VbOLEUIActivate -4 If the object supports in-place activation, activates the object for in-place activation and shows any user interface tools. If the object doesn't support in-place activation, the object doesn't activate, and an error occurs.

VbOLEInPlaceActivate -5 If the user moves the focus to the OLE container control, creates a window for the object and prepares the object to be edited. An error occurs if the object doesn't support activation on a single mouse click.

VbOLEDiscardUndoState -6 Used when the object is activated for editing to discard all record of changes that the object's application can undo.





Note These verbs may not be listed in the ObjectVerbs property array.

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 18.03.2003 (Вт) 9:33

RayShade, а примерчик?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 18.03.2003 (Вт) 11:33

Ну наверное, так:



Сначала проверяешь что объект поддерживает - перебираешь массив OLE.ObjectVerbs, число его элементов - это OLE.ObjectVerbsCount

Учти, что там обычно перечисляются специфические команды, кроме тех что указаны в описании DoVerb



А потом уже берешь и выполняешь OLE.DoVerb Verb где Verb - Это нужная тебе команда.

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 18.03.2003 (Вт) 12:39

Мне этот способ что-то не нравится, а программно изменять можно?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 18.03.2003 (Вт) 12:43

Ты вообще хоть понимаешь чего говоришь? :evil: Это по твоему как? Аппаратно чтоли? Есть стандартный интерфейс взаимодействия OLE объектов. Если он тебе не нравится, напиши свой. :)



Или используй не внедренный OLE а просто создавай себе объект через CreateObject и делай дальше с ним чего хочешь.



А в случае конкретно с Excel можно использовать Microsoft Office XP Web Components Spreadsheet - это вставляемый на форму объект, полностью реализующий функциональность Excel.

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 18.03.2003 (Вт) 12:53

Вообще мне надо диаграмму, чтобы выглядела цивильно, и редактировать было просто.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 18.03.2003 (Вт) 12:55

Тогда повесь MSChart и не мучайся :)

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 18.03.2003 (Вт) 12:58

Выглядит примитивно. :?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 18.03.2003 (Вт) 13:21

Свой тогда контрол напиши, что я могу еще сказать ;)

Чтоб выглядел как надо ну и все такое ;) Или поищи в инете - там наверняка чартов дофига есть.

sanches
El compañero
El compañero
 
Сообщения: 823
Зарегистрирован: 09.01.2003 (Чт) 3:58
Откуда: Р_О_С_С_И_Я ! (Питер)

Сообщение sanches » 19.03.2003 (Ср) 19:47

на vbrussian.ru я дофига видел (вроде это там было :wink: ) Chart'ов
Изображение

TimeKeeper
Постоялец
Постоялец
 
Сообщения: 437
Зарегистрирован: 11.10.2002 (Пт) 4:47
Откуда: Russia

Сообщение TimeKeeper » 20.03.2003 (Чт) 8:14

Щас проверю, дофига там или нет :wink:


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 73

    TopList  
cron