ÓÃdelphi ÔÚWordÉÏÃæÔö¼ÓÒ»¸ö°´Å¥
н¨Ò»¸öActive Library
2. н¨Ò»¸öCOM Object£¬ÔÚClass NameÌîÒ»¸öÃû×Ö£¬ÈçTest¡£
µãÒ»ÏÂImplemented InterfaceºóÃæµÄList°´Å¥¡£ÔÙµãһ϶Ի°¿òÖеÄAdd Library°´Å¥£¬
Ñ¡Ôñ“Program Files\Common Files\Designer”Ŀ¼ÏµÄmsaddndr.dllÎļþ¡£
È»ºóÔÚÁбíÖÐÕÒµ½msaddndr.dllÀïÃæµÄ_IDTExtensibility2½Ó¿Úµã»÷È·¶¨¡£
3. ÏÖÔÚCom AddIn²¿·ÖÒѾÍê³É£¬ÏÖÔÚÒªÔÚWordÀïÃæ¼ÓÒ»¸öCommandBarºÍÒ»¸ö°´Å¥£¬²¢ÇÒÈð´Å¥ÏìӦʼþ¡£
4. ´´½¨Ò»¸öTcommandBarButtonµÄOleServerÀàÒÔÁ¬½Óµ½CommandButton²¢ÏìӦʼþ¡£´úÂ룺ÈçÏÂ
¶¨Ò岿·Ö
TCommandBarButtonClick = procedure(const Ctrl: OleVariant; var CancelDefault: OleVariant) of Object;
TCommandBarButton = class(TOleServer)
private
FIntf: CommandBarButton;
FOnClick: TCommandBarButtonClick;
function GetDefaultInterface: CommandBarButton;
procedure SetOnClick(const Value: TCommandBarButtonClick);
protected
procedure InitServerData; override;
procedure InvokeEvent(DispID: TDispID; var Params: TVariantArray); override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: CommandBarButton);
procedure Disconnect; override;
property DefaultInterface: CommandBarButton read GetDefaultInterface;
published
property OnClick : TCommandBarButtonClick read FOnClick write SetOnClick;
end;
ʵʩ²¿·Ö
{ TCommandBarButton }
procedure TCommandBarButton.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
ConnectEvents(punk);
Fintf:= punk as CommandBarButton;
end;
end;
procedure TCommandBarButton.ConnectTo(svrIntf: CommandBarButton);
begin
Disconnect;
FIntf := svrIntf;
ConnectEvents(FIntf);
end;
constructor TCommandBarButton.Create(AOwner: TComponent);
begin
inherited;
end;
destructor TCommandBarButton.Destroy;
begin
inherited;
end;
procedure TCommandBarButton.Disconnect;
begin
if Fintf <> nil then
begin
DisconnectEvents(FIntf);
FIntf := nil;
end;
end;
function TCommandBarButton.GetDefaultInterface: Com
Ïà¹ØÎĵµ£º
......
Delphi ActiveX FormµÄʹÓÃʵÀý
By knityster
1. ActiveX¿Ø¼þ¼ò½é
ActiveX¿Ø¼þÒ²¾ÍÊÇÒ»°ãËù˵µÄOCX¿Ø¼þ£¬ËüÊÇActiveX¼¼ÊõµÄÒ»²¿·Ö¡£
ActiveX¿Ø¼þ¿ÉÒÔ±»¼¯³Éµ½ºÜ¶àÖ§³ÖActiveXµÄÓ¦Óõ±ÖÐÈ¥£¬»òÕßÖ±½ÓÓÃÀ´À©Õ¹Ó¦ÓõŦÄÜ£¬ÕâЩ֧³ÖActiveXµÄÓ¦ÓðüÀ¨C++ Builder¡¢Delphi¡¢Visual dBASE¡¢ Visual Basic¡¢Visual C++¡ ......
ÕâÀïÏÈ˵˵Á½¸ö¸ÅÄTheme(Ö÷Ìâ)ºÍ Visual Style ¡£Theme ×îÔç³öÏÖÔÚ Microsoft Plus! for Windows 95 ÖУ¬ÊÇ Windows ÖÐ Wallpaper¡¢Cursors¡¢Fonts¡¢Sounds ¡¢Icons µÈµÄÉèÖÃÖµ¼¯ºÏ¡£Visual Style ÔÚ Windows XP Öвű»ÒýÈ룬Visual Style ¹æ¶¨ÁË Contorls µÄÍâ¹Û£¬ÁíÍ⻹°üÀ¨Ê¹ÓÃÕâЩÍâ¹ÛµÄÒ»Ì× API ......
1) Error loading midas.dll ûÓÐ×¢²ámidas.dll ÔËÐÐRegSver32.exe midas.dll
2)Result := GetProcAddress(FGDIPlusLibrary, PChar(ProcName));±àÒë ³öÏÖÕâÑùµÄÎÊÌ⣬Ӧ¸ÃÊÇÉèÖ÷½ÃæµÄÎÊÌ⣬Project->Options->Complier->Hugestrings ¹³ÉϾÍokÁË£¡
3) TCheckListBoxÓиöitemEnable ......