• ベストアンサー

VisualStudioのツールボックスを利用してこのようなことはできるのでしょうか?

visual studio 2008 express edition を使用しています。 下の図を見てほしいのですが、 http://jude.change-vision.com/jude-web/product/img/community_class_en.png クラスを入れてる四角形のもの(なんて言えばよいのか)と、それを結ぶ伸縮可能な矢印がありますが、 このようなものはツールボックスにあるものでできるのでしょうか? それともプログラムで1から作ら(線を描画してクラスの入れ物から離れないようにしてとか・・)なければ いけないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.3

クラスデザイナはExpress Editionにはありません。 http://www.microsoft.com/japan/msdn/vstudio/2008/product/compare.aspx Standard Edition以上が必要です。 それはさておき、本旨はクラスデザイナが使いたいのではなくアプリケーション上でUMLデザイナのようなフォームを使いたいって事だと思いますが、そういうユーザーコントロールを作るしかないかと思います。 親クラスに繋がるLineオブジェクトコレクションと子クラスに繋がるLineオブジェクトコレクションを持って、フォームのMoveイベントで削除→再計算→描画、ってのが一番簡単でしょうか。

takagoo100
質問者

お礼

ご返答ありがとうございます。 作るうえで1つ質問があるのですが、 >親クラスに繋がるLineオブジェクトコレクションと子クラスに繋がるLineオブジェクトコレクション これは、 ┌──── │親クラス│ └────    ↑    │    │     ┌───┐    └──→│子クラス│          └───┘ 親クラスに繋がっている上向きの矢印と 子クラスに繋がっている右向きの矢印と それぞれ個別に2つ保持するという考えでよいでのしょうか? またこのようなUMLデザイナのようなフォームの作り方が説明してある サイトや書籍をご存知でしょうか?

その他の回答 (3)

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.4

#3で意図しているのは親・子のどちらを動かしても確実に線が追随するようにすることです。 ですから親子で別々の線オブジェクトを持っていては意味がなく、同じ線のオブジェクトを持った上で親が始点・子が終点のみを操作する(もちろん逆でもいい)というアプローチを考えていました。 提示された例を実装するなら、System.Windows.Shapes.LineではなくSystem.Windows.Shapes.Pathクラスを持つ連結線クラスを別に実装して親子で共有する形を取るのがいいんじゃないかと思います。

takagoo100
質問者

お礼

ご返答ありがとうございます。 勘違いしてました・・ようやく仰っていることが理解できました。 ありがとうございます。

  • nishito24
  • ベストアンサー率90% (10/11)
回答No.2

クラスダイアログ→クラスダイアグラム

  • nishito24
  • ベストアンサー率90% (10/11)
回答No.1

クラスダイアログで似たような図を作れます。 参考URLは2005で、Express Editionには機能がないそうです。 2008のExpress Editionにあるのかはわかりません。

参考URL:
http://www.atmarkit.co.jp/fdotnet/dotnettips/546vsclassdiag/vsclassdiag.html
takagoo100
質問者

お礼

ご返答ありがとうございます。 なるほど、たしかにそのような機能なんですが、 D-Matsuさんも仰っていますが、クラスダイアグラムそのものではなくて その機能(線を自動的に付加してくれたりとか)だけを使いたいと思ってます。

関連するQ&A