KoMaDo   VISIO SQUARE : VISIO全般  ■ Headline ■ HOME    

VISIO全般トップへ ▼カッ飛び最後 

  アンカー ウィンドウの作成と使用

01: 名前:ゆーこりん投稿日:2007/08/23(木) 22:17
Visio2003 C#でアドインを作成しております。

アンカー ウィンドウの作成する場合、
VBAでは、
Dim wAddon As Visio.Window
Set wAddon = ActiveWindow.Windows.Add("Stock", visWSVisible, _
visAnchorBarAddon, , , 300, 210)
とするだけなのですが、
C#の場合、"ActiveWindow"をどのようにすれば良いのか判らず
いきなり躓いてしまいました・・・。
マイクロソフト様は、「アンカー ウィンドウの作成は簡単です。」と仰って
いるのですが・・・
APIを使って、
IntPtr aaa = GetForegroundWindow();//WindowHandle取得
のようにしてハンドルを取らないとならないのでしょうか?
でも、これでは、Visioのハンドルであって、Documentのハンドルでは
ないですし・・・・(一日かかってここまでしかこれませんでした。)

簡単な方法は無いのでしょうか?

02: 名前:visGeek投稿日:2007/08/23(木) 22:44
Code LibrarianのAnchor Bar Usageにサンプルがあります。

03: 名前:ゆーこりん投稿日:2007/08/23(木) 22:50
早速の返答有難うございます。
落ち着いて考えたらできました。(間違っているかも知れませんが・・・)
private void applicationObject_SelectionChanged(Visio.Window Window)
{
Double visWSVisible = 134217728;// (&H8000000)
Double visWSAnchorRight = 128;// (&H80)
Double visAnchorBarAddon = 10;

Visio.Application VisApp = applicationObject;
Visio.Window AWin = null;
if (VisApp == null)
{
AWin = AWin;
}
AWin = VisApp.ActiveWindow;
AWin.Windows.Add("Position Window", visWSVisible + visWSAnchorRight, visAnchorBarAddon, "", "", 300, 210, null, null, 0);

}


VISIO全般トップへ ▲カッ飛び先頭