画像/SVG

Q4
破線の線描
[内容]
背景に破線を引きたい

A4
[解決方法]
Biz/Browserでは線に対応するGUIオブジェクトがありません。
SVGを利用して、FormやTabForm、Docオブジェクトに任意の線を表示することは可能です。

SVGでline要素を定義し、stroke-dasharray属性を「(実線1区切り分の長さ) (空白部分の間隔)」に設定することで破線を表示することが出来ます。

SVGの表示では、描画する順番に注意が必要です。
FormクラスのBgpatternプロパティ、TabFormクラスのBgpatternプロパティは、背景として
描画するので、SVGの線画はボタンなどに隠れてしまいますが、DocクラスのOverlay
プロパティは、全てのオブジェクトの上に描かれます。


[サンプルコード]
背景に破線を表示します
/* Formの背景に破線を描画 */
Form Form1 {
  Width = 500;
  Height = 500;
  
  if (!$DESIGNTIME) {
    BgPattern = new xmlDocument << xml <<-
    <?xml version="1.0"?>
    <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
    "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
    <svg>
    <line x1="0" y1="10" x2="100" y2="10" stroke-dasharray="3 2"
    	 stroke-width="1" stroke="#000000"/>
    </svg>->>;
    BgPattern.documentElement.setAttribute("width",Form1.width);
    BgPattern.documentElement.setAttribute("height",Form1.height);
  }
}
管理番号:Pct_006
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ