setdlgpos

ダイアログボックスの位置を設定する。

setdlgpos [<x> <y> [<position> [<offset x> <offset y>]]]

パラメータ

整数 <x>
ダイアログボックス左上隅の X 座標。
整数 <y>
ダイアログボックス左上隅の Y 座標。
整数 <position> (バージョン 5.X 以降)
ダイアログボックスの表示位置。
1 : ディスプレイの左上
2 : ディスプレイの右上
3 : ディスプレイの左下
4 : ディスプレイの右下
5 : ディスプレイの中央
6 : Tera Term の VT ウインドウの左上
7 : Tera Term の VT ウインドウの右上
8 : Tera Term の VT ウインドウの左下
9 : Tera Term の VT ウインドウの右下
10 : Tera Term の VT ウインドウの中央
整数 <offset x> (バージョン 5.X 以降)
<position> で指定した表示位置の X 座標補正値
整数 <offset y> (バージョン 5.X 以降)
<position> で指定した表示位置の Y 座標補正値

返り値

無し

解説

"inputbox", "listbox", "messagebox", "passwordbox", "statusbox", "yesnobox" コマンドで表示されるダイアログボックス、エラーダイアログ表示位置を位置を変更する。
また、ステータスダイアログボックスが表示されている場合、setdlgpos コマンドはそのダイアログボックスを移動させる。
ダイアログがディスプレイからはみ出す場合は、ディスプレイ内に移動される。(バージョン 4.105以降)
座標の単位はピクセル。

  1. setdlgpos (バージョン 4.105以降)
    パラメータ省略時の表示位置は、メインディスプレイ(プライマリディスプレイ 以下略)の中央となる。
  2. setdlgpos <x> <y>
    <x> と <y> でダイアログボックス左上隅の座標 (x,y) を指定する。
    原点 (0,0)はメインディスプレイ左上隅。
  3. setdlgpos <x> <y> <position> (バージョン 5.X 以降)
    • <position> が 1 から 5 の場合
      MACRO が Tera Term とリンクされている場合は、VT ウインドウが表示されているディスプレイにダイアログボックスを表示する。
      MACRO が Tera Term とリンクされていない場合は、メインディスプレイにダイアログボックスを表示する。
      ダイアログボックスの表示位置は、<position> で指定した場所となる。
    • <position> が 6 から 10 の場合
      MACRO が Tera Term とリンクされている場合は、VT ウインドウが表示されているディスプレイにダイアログボックスを表示する。
      MACRO が Tera Term とリンクされている場合の表示位置は、<position> で指定した場所となる。
      MACRO が Tera Term とリンクされていない、もしくは、Tera Term が最小化状態または非表示状態の場合は、メインディスプレイにダイアログボックスを表示する。
      この場合の表示位置は <x> <y> 座標となる。
  4. setdlgpos <x> <y> <position> <offset x> <offset y> (バージョン 5.X 以降)
    ダイアログボックスの表示位置は、setdlgpos <x> <y> <position> の表示位置(x,y座標)に <offset x> <offset y> を加算した場所となる。
    負の値を指定する場合は、負の整数定数についての注意を参照のこと。

; 左上の隅にダイアログボックス
setdlgpos 0 0
messagebox 'Message' 'Title'

; ステータスダイアログボックスを開く
setdlgpos 0 200
statusbox 'Message' 'Title'

; ステータスダイアログボックスを移動
for i 0 200
  setdlgpos i 200
next
setdlgpos 0 0 1 100 100
messagebox 'setdlgpos 0 0 1 100 100' 'top-left of the display'

setdlgpos 0 0 2 (-100) 100
messagebox 'setdlgpos 0 0 2 -100 100' 'top-right of the display'

setdlgpos 0 0 3 100 (-100)
messagebox 'setdlgpos 0 0 3 100 -100' 'bottom-left of the display'

setdlgpos 0 0 4 (-100) (-100)
messagebox 'setdlgpos 0 0 4 -100 -100' 'bottom-right of the display'

setdlgpos 0 0 5
messagebox 'setdlgpos 0 0 5 ' 'center of the display'

setdlgpos 0 0 6
messagebox 'setdlgpos 0 0 6' 'top-left of the VT window'

setdlgpos 0 0 7
messagebox 'setdlgpos 0 0 7' 'top-right of the VT window'

setdlgpos 0 0 8
messagebox 'setdlgpos 0 0 8' 'bottom-left of the VT window'

setdlgpos 0 0 9
messagebox 'setdlgpos 0 0 9' 'bottom-right of the VT window'

setdlgpos 0 0 10
messagebox 'setdlgpos 0 0 10' 'center of the VT window'

参照