WindVoiceの日記: 線が引きたい
日記 by
WindVoice
訳あって、C#を使ったGUIアプリケーションで、線が引きたくなりました。
ExcelやWordにあるような、ふたつの点の間を結ぶ線です。
Clickイベントを処理したり、ドラッグしてぐりっと形を変えたりしたいのです。
ベジェ曲線など、おしゃれな必要はなくて、硬派な一直線でいいのです。
しかし.Net Frameworkにはそんなものは含まれていないようです。
Labelコントロールを目的外使用すれば、横または縦の一直線は引けるのですが、
それでは任意の2点をつなげません。斜めの線にはならないのです。
しかしコントロールとしては基本的なので、誰かが作っているだろう……
と思ったのですが、これが意外にみつかりません。
GUIは基本的に矩形の領域を占有するように作られている(WidthとかHeightとか)ので、
斜めのGUIを実装するのが(特に描画やクリック処理周辺で)面倒なのかもしれません。
どうするかなぁ。斜めに線を引くコンポーネントを作るのは私の手に余りそうです。
せいぜいがLabelを3つ使って横⇒縦⇒横のようにつなげて2点を結ぶくらいかな。
私に作れるかな…… 微妙なところです。
ExcelやWordにあるような、ふたつの点の間を結ぶ線です。
Clickイベントを処理したり、ドラッグしてぐりっと形を変えたりしたいのです。
ベジェ曲線など、おしゃれな必要はなくて、硬派な一直線でいいのです。
しかし.Net Frameworkにはそんなものは含まれていないようです。
Labelコントロールを目的外使用すれば、横または縦の一直線は引けるのですが、
それでは任意の2点をつなげません。斜めの線にはならないのです。
しかしコントロールとしては基本的なので、誰かが作っているだろう……
と思ったのですが、これが意外にみつかりません。
GUIは基本的に矩形の領域を占有するように作られている(WidthとかHeightとか)ので、
斜めのGUIを実装するのが(特に描画やクリック処理周辺で)面倒なのかもしれません。
どうするかなぁ。斜めに線を引くコンポーネントを作るのは私の手に余りそうです。
せいぜいがLabelを3つ使って横⇒縦⇒横のようにつなげて2点を結ぶくらいかな。
私に作れるかな…… 微妙なところです。
線が引きたい More ログイン