2010-04-08 33 views
1

什麼是在Tcl/Tk包裝程序中實例化VB6 ActiveX控件的最常用方法。VB6 ActiveX控件到TCL/Tk應用程序中

這個設置是否存在性能問題,即圍繞GDI手柄?

+1

我不知道你在做什麼那裏有VB6 **和** Tcl/Tk,但聽起來很可怕 – 2010-04-08 12:04:15

+0

@Tiberiu爲什麼可怕?在構建ActiveX控件時假定Tcl/Tk的決定是固定的,是否有偏好替代語言? – PeanutPower 2010-04-08 12:05:44

+1

聽起來像一個來自10年前的有效問題。:-) 現在,VB6被完全棄用,Tcl(不幸地是?)被邊緣化了。我可以看到在Tcl/Tk中進行跨平臺的一些事情,但是不會將它與ActiveX和不受支持的運行時綁定在一起。 – 2010-04-08 12:20:30

回答

3
  1. Download the ActiveTcl distribution並安裝它。
  2. 參照The TclTk wikiDownload the tcom library for tcl
  3. 的TCOM自述指示在從壓縮文件中的\ lib文件夾中找到成C的TCOM文件夾中複製:\ Tcl的\ lib中安裝TCOM庫。

現在創建一個文本文件,包含以下的.tcl擴展:

# This demo of calling the Fire method on the MyControl VB6 ActiveX control 
puts "Hello World"; 
package require tcom; 
set myinstance [::tcom::ref createobject "MyKit.MyControl"]; 
$myinstance Fire; 

雙擊.tcl文件使用要打開它。

另一種選擇是使用「Open Tcl」a.k.a. optcl,這顯然與tcom不同,它支持在基於Tk的應用程序中嵌入可視ActiveX組件。安裝類似於TCOM(複製optcl文件夾到C:\ TCL \ lib文件夾

這裏是代碼的optcl版本:

#load optcl 
package require optcl 
set myinstance [optcl::new MyKit.MyControl]; 
$myinstance Fire; 
相關問題