tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^3: VB.Netで作成したコントロールをVB6.0で使用したい
投稿日: 2016/12/27(Tue) 09:51
投稿者魔界の仮面弁士
> フォームに貼り付けられるならコンポーネントでも、参照設定でもかまいません。

参照設定だけだとデザイン時の表示や設定は行えませんが、
実行時に表示させることならば、下記の手法で実現可能です。


(案1) VB6 の PictureClip コントロールや LoadPicture 関数のように、
 Picture オブジェクト(stdole.IPictureDisp)を返却するメソッド/プロパティを用意する。
 例1:Microsoft.VisualBasic.Compatibility.VB6.Support.ImageToIPicture メソッド
 例2:System.Windows.Forms.AxHost.GetIPictureDispFromPicture メソッド
 例3:クリップボード転送


(案2) VB.NET から VB6 の PictureBox や Form に直接描画するために、
 Graphics.FromHdc/Graphics.FromHwnd メソッドを利用する。
 ※AutoRedraw = True の場合、描画完了後に Refresh メソッドの呼び出しが必要


(案3) Graphics クラスを使った描画機能をカプセル化した DLL を用意し、
 それを VB6 から参照設定して利用する。
 ※あるいはカプセル化せず、直接 GDI+ の Flat API を Declare しても良い

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。