[目次]
ＱＸ　ＭＡＣＲＯ (NT&95 版 ver 4.5)

マクロの概要

注意点(マクロを作成する前に必ず参照してください)

マクロ作成手順(マクロの簡単な作り方および使い方)

マクロ作成手順(自動実行マクロ)

サンプルマクロについて

ステートメント / 関数(マクロの基本です)

プロパティ / メソッド(ＱＸを制御します)

変数       定数

演算子     演算子の優先順位     演算についての注意

命名規則(変数やプロシージャなどの名前の付け方)

自動実行マクロ   マクロの中止   ＤＬＬの呼び出し

ステートメント・関数 索引   用途別ステートメント・関数

プロパティ・メソッド 索引

ＱＸでの基本機能 一覧

マクロを作ったら...

マクロサンプルのヘルプ

変更履歴(以前のバージョンからの変更点)


マクロの概要

　ＱＸのマクロはＢＡＳＩＣという言語と同様の文法です。

　キー・メニュー・ツールバー・ステータスバーなどにマクロを割り当てられます。

　既存のＤＬＬを呼び出すことにより、マクロの言語仕様だけでは不可能なことも実現できます。

　１つのファイルに複数のマクロを記述できます。


マクロ作成手順

　> の後に書かれているのは操作例です。

一般マクロのとき

■ ファイル名を決める

  >QXW32.EXE のあるディレクトリで TEST.MAC を開く

■ プロシージャ名を考える

  >main にする

■ プロシージャの内容を記述する

  >'文書に MACRO TEST と入力するマクロ

  >proc main()

  >    if @hwnd = 0 then exit proc

  >    @Input "MACRO TEST"

  >end proc

■ 保存する

  >上書き保存を実行して、TEST.MAC を保存する

■ すぐに実行するには

  >マクロ一覧(MacroList)を実行して TEST を選べば、すぐに実行できます。

■ キー・メニュー・ツールバーのどれにマクロを割り当てるか決める

  >・ キーに割り当てるとき（キー定義設定 @KeySet を実行してください)

  >・ ツールバーに割り当てるとき (ツールバー設定 @ToolBarSet を実行してください)

  >・ メニューに割り当てるとき

  >QXWKEY.INI ファイルを書き換えてください。

  >[PopupMenu] または [MenuBar] 以後の好みの位置に

  >     "マクロ TEST"   $TEST.MAC,main

  >と記述し、保存する。

■ QXWKEY.INI を書き換えたときは、ＱＸを終了し再起動する。

■ 動作を確認する。

  >CTRL MENU A を押すかツールバー・メニューを選んで動作を確認する。

　注意：キー定義ファイルを書き換えた後は、ＱＸを再起動する必要がありますが、マクロファイルだけを書き換えたときは再起動の必要はありません。


マクロ作成手順(自動実行マクロ)

その１　キー定義ファイルにマクロファイル名を記述する方式。

　> の後に書かれているのは操作例です。

　一般マクロのときと同様にマクロファイルを作成し、QXWKEY.INI を書き換えます。

  >[Macro]

  >AutoMacro=QAUTOMAC.MAC

  >と記述し、保存する（ファイル名が QAUTOMAC.MAC のとき）。

　自動実行マクロを書き換えたときは、必ずＱＸを再起動しなければなりません。

その２　ファイル追加方式

　以下の ファイル名,プロシージャ名 で、ＱＸのあるディレクトリまたは共通設定で設定したディレクトリにマクロファイルを作成します。

QAOPEN??.MAC,AutoOpen

QAOPND??.MAC,AutoOpened

QACLSD??.MAC,AutoClosed

?? は 01 ～ 10 までの数字。

　それぞれ、文書を開く直前、開いた直後、閉じた直後に実行されるマクロです。

　ＱＸを再起動する必要はありません。マクロファイルを作成(または更新)すると、すぐに有効になります。

例

QAOPND01.MAC というファイルに以下の内容を記述します。

proc AutoOpened

        beep

end proc

ファイルを開くたびに、beep が実行されます。


サンプルマクロについて

マクロキットに添付されているサンプルマクロは自由に変更して使用してもかまいません。

自作のマクロをアップロードするときに、サンプルマクロの一部を流用してもかまいません。また、サンプルマクロを一部変更して、高機能にしたものをアップロードしてもかまいません。


マクロを作ったら...

　有用なマクロができたら、NIFTY-Serve FWINAL LIB 19 にアップロードしましょう。

　使い方を記述したドキュメントはマクロファイルの拡張子を TXT にしたものにしましょう。Windows 標準のヘルプファイルの場合は、拡張子を HLP にしたものにしましょう。

例

　ABCD.MAC というマクロファイルを作成したときは、ABCD.TXT または ABCD.HLP というファイル名でドキュメントを作成します。

　複数のマクロファイルがあり、そのドキュメントを１つにしたいときは、マクロファイルの２行目に

'*ABCD.TXT

のようにコメントを入れてください。（ ' と * と ファイル名）

例

　ABCD1.MAC ABCD2.MAC の２つのマクロファイルを作成し、ドキュメントを ABCDX.TXT にしたいときは、ABCD1.MAC ABCD2.MAC のそれぞれのファイルの２行目に

'*ABCDX.TXT

と記述します。

　ファイル追加方式の自動実行マクロを配布するときは...

　QAOPENXX.MAC のように数字の部分を適当な文字にしたファイル名にし、利用者自身に XX の部分を好きな数字(01-10)にリネームさせるようにして下さい。


注意点

・ マクロファイルのファイル名は何でもかまいませんが、ファイル名の先頭の文字は Q 以外、また、拡張子を MAC にする事を推奨します。

・ マクロファイルの１行目にはそのファイルに対するコメントを記述する事を推奨します。

・ １行の長さは約250バイトまでです。

・ 予約語（ステートメントや関数）、プロパティ、メソッドなどは大文字小文字のどちらでもかまいませんが、変数名・プロシージャ名などは大文字小文字を区別します。

・ 文書に対して何らかの操作を行うマクロは最初に

if @hwnd = 0 then exit sub

のように、ドキュメントウィンドウがあるか（つまり、文書を編集しているか）どうかを確認してください。

・ マクロを実行しようとしてエラーが発生すると、エラー内容・ファイル名・行番号が表示されます。このときのタイトルバーに「解析エラー」と表示されているときは、マクロファイルを解析中にエラーが見つかったため、マクロはまだ１行も実行されていません。

・ マクロのデバッグ時などに、マクロファイルをＱＸで開いたままで実行するときは 共通設定 ダイアログ（システム）- 排他制御 は「他のアプリからは読み書き禁止」以外にしてください。

・ １つのマクロファイルに、複数のマクロ（プロシージャ）を入れることができます。

・ 複数のマクロファイルにまたがってプロシージャや関数をコールすることはできません。@@JumpMacro により、他のマクロファイルにジャンプすることは可能です。


マクロの中止

　一般マクロの実行中に、アプリケーションウィンドウを右クリックするとマクロの実行を中止できます。中止してもよいか確認があるので中止したいときはＹを入力してください。

　この動作は、stopmacro ステートメントにより禁止できます。

　Ctrl Break を入力すると、直ちにマクロを中止することができます。

　また、自動実行マクロについては中止させることはできません。

参照    stopdispatchevent


演算についての注意

　数値に関する演算はすべて long で行われます。

　integer型の変数を使用すると、long型に変換されてから演算が行われます。このときに、符号拡張されます。

例

dim x as integer

dim y as long

x = &H8000      '-32768 を代入したのと同じ

y = x           'y には &HFFFF8000(= -32768) が代入される

y = &H8000      'y には &H00008000(= 32768) が代入される

　&H8000 は integer の範囲(-32768～32767)では負の数になるため、long型に変換される際に符号拡張され、long型の-32768 つまり、&HFFFF8000 になります。

　Win3.1 版 では HWND を使用する場合も、符号拡張に注意してください。


プロシージャ

　ユーザが独自に定義できるステートメントのことです。

　sub により、プロシージャを定義できます。


ステートメント

　なんらかの動作、宣言、定義などを行うための命令です。

　dim や for など、たくさんのステートメントが組み込まれています。

　プロシージャを定義することにより、組み込みのステートメントと同様の使い方ができます。

参照    ステートメント・関数 索引

        用途別ステートメント・関数


関数

　何らかの値を返す手続きのことです。

　組み込み関数 と ユーザが独自に定義できる関数(functionで定義する)の２種類があります。

　関数は必ず式の一部として使用されます。len 関数は文字列の長さを返します。次の例のように、単独で len を使用することはできませんし、意味がありません。

len(a$)

　次の例のように式の一部として使用します。

print len(a$)

x = len(a$) + 10

　まれに、返値を使用しないで関数を呼び出したいことがあります。そのような場合でも式の一部として使用しなければなりませんので、call を使用してください。

call popupmenu(item$)

参照    ステートメント・関数 索引

        用途別ステートメント・関数


プロパティ

　プロパティとはウィンドウ(文書)の属性(状態)のことです。

　プロパティは変数と同様に値を代入したり、値を取得したりできます。ただし、取得しかできないプロパティもあります。

　プロパティに値を設定することにより、文書の状態を変更することができます。

例

@Line = 1       'カーソルを１行目に移動

　また、プロパティから値を取得することにより、文書の状態を知ることができます。

例

print @Filename$        '文書のファイル名をステータスバーに表示

・ 先頭に @ が１つついているプロパティ

　カレントウィンドウ（文書）に関するプロパティです。

　一般に、AutoOpen, AutoClosed, AutoExit, AutoInit 内ではカレントウィンドウプロパティは使用できません。

・ 先頭に @ が２つついているプロパティ

　アプリケーションウィンドウに関するプロパティです。

注意

　ディレクトリを返すプロパティは、ディレクトリの区切りが \ に置き換えられます。

　一般マクロ内ではすべてのプロパティが使用できますが、自動実行マクロ内では制限があります。

参照    自動実行マクロ内でのプロパティ・メソッドについて


メソッド

　メソッドとは文書を制御するための命令です。

　メソッドにはステートメントのようにある動作をするものと、関数のように値を返すものがあります。

・ 先頭に @ が１つついているメソッド

　カレントウィンドウ（文書）に関するメソッドです。

　ＱＸでの基本機能もこれに属します。

　一般に、AutoOpen, AutoClosed, AutoExit, AutoInit 内ではカレントウィンドウメソッドは使用できません。

・ 先頭に @ が２つついているメソッド

　アプリケーションウィンドウに関するメソッドです。

注意

　返値を伴うメソッドを行頭におくことはできません。返値を無視してメソッドを呼び出したいときは call ステートメントを使用してください。

　一般マクロ内ではすべてのメソッドが使用できますが、自動実行マクロ内では制限があります。

参照    自動実行マクロ内でのプロパティ・メソッドについて


変数

　何らかの可変の値を格納できる箱のようなものを変数といいます。

　「数値変数」と「文字列変数」と「ユーザ定義データ型変数」の３種類があります。

　数値変数には以下の種類があります。

integer   整数型（16ビット　-32768～32767までの範囲）

long      長整数型（32ビット　-2147483648～2147483647までの範囲）

HWND      integer と同じ（ウィンドウハンドル用として使用する）

          （NT&95 版 では long と同じ）

　integer 型の変数に範囲を超える値を代入すると、65536 で割ったあまりが代入されます。

例

dim j as integer

j = 70000       ' j = 4464 と同じ

　文字列変数には以下の種類があります。

string          可変長文字列型

string[xx]      固定領域文字列型

　固定領域文字列型・ユーザ定義データ型以外は配列にすることができます。

参照    static 命名規則


定数

　定数には以下のものがあります

■ １０進定数

■ １６進定数

　１６進数の先頭に &H を付けると１６進定数となります。

例

&H3A    '16進数の3A = 10進数の58 = `:`

■ 文字定数

　文字を ` で囲むと文字定数となり、囲んだ文字のアスキーコードまたはシフトＪＩＳコードとなります。

　` 自身のアスキーコードは ```` というように記述します。

例

`:`     ' : のアスキーコード。すなわち&H3A

`あ`    ' あ のシフトＪＩＳコード。すなわち&H82A0

■ 予約定数

　あらかじめ定義されている記号定数です。

参照    予約定数一覧

　１０進定数・１６進定数・文字定数・予約定数 は long 型の数値定数です。

■ 文字列定数

　文字列を " で囲むと文字列定数となります。

　" 自身を文字列定数に含めるには "" というように２つ記述します。

例

"ABC""DEF"      'ABC"DEF という文字列


命名規則

　変数名/プロシージャ名/関数名/ユーザ定義データ型名などの識別子に使用できる文字は以下の通りです。

アルファベット(A-Z, a-z)

数字(0-9)

アンダースコア(_)

半角カナ &HA1-&HDF (｡-ﾟ)

すべての全角文字

　ただし、数字は２文字目以降にしか使用できません。

　識別子は32バイトまで記述できます。

        半角文字は１文字あたり１バイト

        全角文字は１文字あたり２バイト


一般マクロ

キー/メニュー/ツールバー/ステータスバーから実行するマクロを一般マクロといいます。

参照    自動実行マクロ


自動実行マクロ

　あるイベント（事象）が起こったときに自動的に実行されるマクロを自動実行マクロといいます。

プロシージャ名  イベント

AutoKey         文字キーが押されたとき

AutoVKey        キーが押されたとき

AutoZKey        ＩＭＥで文字が入力されたとき

AutoOpen        ファイルが開かれる直前

AutoOpened      ファイルが開かれた直後

AutoClosed      ファイルが閉じられた直後

AutoExit        ＱＸが終了する直前

AutoInit        ＱＸ起動直後

　一般マクロ実行中は自動実行マクロは実行されません。つまり、一般マクロ中でファイルを開く動作を行っても、AutoOpen は実行されません。

注意：自動実行マクロ内ではあまり複雑な動作は行わないようにしてください。

自動実行マクロには２つの種類があります。

１：キー定義ファイルにマクロファイル名を記述する方式。

　　すべてのタイプの自動実行マクロを使用できる。

　　１つしか登録できない。

　　マクロファイルを更新したら、ＱＸを起動し直さなければならない。

　　２にくらべて高速。

２：特定のファイル名でマクロファイルを作成する(ファイル追加方式)。

　　AutoOpen, AutoOpened, AutoClosed の３つのタイプしか使用できない。

　　それぞれに対して１０個までのマクロファイルを使用できる。

　　マクロファイルを更新したら、すぐに反映される。

　　一般に低速。

参照    自動実行マクロ内でのプロパティ・メソッドについて

        マクロ作成手順(自動実行マクロ)

AutoVKey, AutoKey の関係

1 キーボードでキーを押す（@@VKey, @@Shift が設定される）

2 AutoVKey が実行される

3 押されたキーが特殊キーでなければ

        @@Key が設定され、AutoKey が実行される

        @@Key が文書に入力または、コマンドが実行される

  押されたキーが特殊キーであれば

        @@VKey からコマンドが実行される


自動実行マクロ内でのプロパティ・メソッドについて

　以下はアプリケーションウィンドウに関するプロパティ・メソッドですが、AutoOpen, AutoOpened, AutoClosed, AutoExit, AutoInit 内では使用不可能です。

@@ActiveFile

@@ActiveFrame

@@Activehwnd

@@FileOpenDir

@@OpenFile

　以下はカレントウィンドウ（文書）に関するプロパティ・メソッドですが、例外的に AutoOpen または AutoClosed 内で使用できます。

Open   :AutoOpen 内で使用可能

Closed :AutoClosed 内で使用可能

@AutoIndent             Open

@Caption$               Open

@CnvTabSpace            Open

@DeleteLastSpace        Open

@DeleteLastTab          Open

@DeleteLastZSpace       Open

@EUC                    Open

@Filename$              Open Closed

@FreeCursor             Open

@HelpFileName$          Open

@hwnd                   Open

@ImeNextOpen            Open

@KeywordNum             Open

@KinsokuBottom          Open

@KinsokuBottomCount     Open

@KinsokuReturn          Open

@KinsokuTop             Open

@KinsokuTopCount        Open

@NoLoadNoCnv            Open

@OverWriteMode          Open

@PageLine               Open

@Pathname$              Open Closed

@PrintCaption           Open

@PrintComment           Open

@PrintEOF               Open

@PrintFold              Open

@PrintHScroll           Open

@PrintKeyword           Open

@PrintModify            Open

@PrintNumber            Open

@PrintPage              Open

@PrintReturn            Open

@PrintRuler             Open

@PrintScreenLine        Open

@PrintStatusLine        Open

@PrintString            Open

@PrintTab               Open

@PrintUnderEOF          Open

@PrintVScroll           Open

@ReadOnly               Open

@StyleNo                Open

@Tab                    Open

@TextMode               Open

@WindowVar              Open Closed

@Width                  Open

@Wordwrap               Open


ＤＬＬの呼び出し

　マクロの言語仕様だけでは実現できないことも、既存のＤＬＬを呼び出せば実現できることがあります。

　ＤＬＬの呼び出しは、使い方を間違えばシステムダウンの原因となります。ｃ言語および Windows API の知識を持った方のみが使用してください。

　ＤＬＬから返値以外でデータを受け取る場合、引数に可変長文字列型/固定領域文字列型/ユーザ定義データ型のどれかを指定します。ただし、配列を使用することはできません。

　ＤＬＬに渡されるときに自動的にポインタに変換されます。

　可変長文字列型の時は、文字列の最後に '\0' が付加されてＤＬＬに渡されます。

　固定領域文字列型のときは、文字列の長さが最大の長さでないときに限り '\0' が付加されてＤＬＬに渡されます。よって、dim a$ as string[10] として定義したときは、９バイトまでしか代入しないでください。

　引数に NULL を渡したいときは、単に 0 と記述してください。"" と記述すると、'\0' を指すポインタが渡されてしまいます。

　ＤＬＬから戻ってきたときに、引数にした可変長文字列型変数の &H00 以降の部分は切り捨てられます。

例１

dllname KERNEL

cdeclarea int GetWindowsDirectory(LPSTR, int);

proc main()

        dim a$ as string

        a$ = string$(256, 0)

        GetWindowsDirectory(a$, 256)

        dim b$ as string[256]

        GetWindowsDirectory(b$, 256)

end proc

例２

type RECT

        Left as default

        Top as default

        Right as default

        Bottom as default

end type

dllname USER

cdeclare void GetWindowRect(HWND, RECT *);

proc main()

        dim rc as RECT

        GetWindowRect(@@hwnd, rc)

        print cformat$("left=%d, top=%d, right=%d, bottom=%d", rc.Left, rc.Top, rc.Right, rc.Bottom)

end proc


ヌルストリング

長さ０の文字列のことです。

"" はヌルストリングです。


可変長文字列型

　約10000バイトの長さまでの文字列を格納できます。これは、全角文字で5000文字、半角文字で10000文字です。


固定領域文字列型

　サイズが固定の領域を占める文字列です。

　定義時に指定したバイト数の長さの文字列まで格納できます。それ以上の長さの文字列を代入しようとすると、超える部分は切り捨てられます。

　文字列内にコード０(&H00)があると、文字列の終端とみなします。よって、文字列内にコード０(&H00)を含むことはできません。

　固定領域文字列型は一般にユーザ定義データ型(type)の中でのみ使用し、通常は使用されません。

　固定領域文字列型は配列にすることはできません。

例

dim a$ as string[2]

a$ = "12345"    'a$ = "12" と同じ

dim b$ as string[5]

b$ = "1" + chr$(0) + "2"   'b$ = "1" と同じ


ユーザ定義データ型

　ユーザ定義データ型は既存の型を組み合わせたものです。

　ユーザ定義データ型は一般にＤＬＬの呼び出しのときの引数に使用し、通常は使用されません。

　ユーザ定義データ型は配列にすることはできません。

参照    type


デバッグウィンドウ

　デバッグ時に変数の値を調べるためのウィンドウです。

　dprint ステートメント を使用して出力します。

　NT&95 版 では Win3.1 版 のように QXWDBWIN.EXE は添付されていません。dprint を実行すると、自動的にデバッグウィンドウが表示されます。


ステートメント・関数 索引
Ａ  Ｂ  Ｃ  Ｄ  Ｅ  Ｆ  Ｇ  Ｈ  Ｉ  Ｊ  Ｋ  Ｌ  Ｍ  Ｎ  Ｏ  Ｐ  Ｒ  Ｓ  Ｔ  Ｕ  Ｖ  Ｗ  Ｘ  記号

[Ａ]

abs 関数

and 演算子

anykeypressed 関数

appactivate 関数

appactivate2 関数

asc 関数

[Ｂ]

beep ステートメント

[Ｃ]

call ステートメント

cdeclare ステートメント

cdeclarea ステートメント

cformat$ 関数

chdir ステートメント

chdrive ステートメント

chr$ 関数

close ステートメント

const ステートメント

control ステートメント

curdir$ 関数

[Ｄ]

date$ 関数

date0$ 関数

ddeexecute ステートメント

ddeinitiate 関数

ddepoke ステートメント

dderequest$ 関数

ddeterminate ステートメント

dim ステートメント

dialog ステートメント

dir$ 関数

dlgenable ステートメント,関数

dlghwnd 関数

dlgitemcmd 関数

dlglistboxarray ステートメント,関数

dlgnotify 関数

dlgtext$ ステートメント,関数

dlgvalue ステートメント,関数

dlgvisible ステートメント,関数

dllname ステートメント

do ステートメント

doevents ステートメント

dprint ステートメント

[Ｅ]

else ステートメント

elseif ステートメント

end ステートメント

environ$ 関数

eof 関数

eqv 演算子

exit ステートメント

[Ｆ]

filedatetime$ 関数

filelen 関数

for ステートメント

freefile 関数

fullpath$ 関数

function ステートメント

[Ｇ]

getattr 関数

getfilename$ 関数

getprofile$ 関数

[Ｈ]

hex$ 関数

[Ｉ]

if ステートメント

imemode ステートメント

imestatus 関数

imp 演算子

inputb$ 関数

inputbox 関数

inputbox$ 関数

inputchar 関数

inputkey 関数

inrstr 関数

inrstrb 関数

instr 関数

instrb 関数

isalnum 関数

isalpha 関数

isdigit 関数

islower 関数

iskeydown 関数

iskeypressed 関数

isupper 関数

isxdigit 関数

[Ｊ]

jistosjis 関数

[Ｋ]

kill ステートメント

[Ｌ]

lcase 関数

lcase$ 関数

left$ 関数

leftb$ 関数

len 関数

lenb 関数

lineinput ステートメント

listbox 関数

loop

ltrim$ 関数

[Ｍ]

mid$ 関数

midb$ 関数

mkdir ステートメント

mod 演算子

month$ 関数

msgbox 関数

[Ｎ]

name ステートメント

next ステートメント

not 演算子

[Ｏ]

open ステートメント

or 演算子

[Ｐ]

popupmenu 関数

print ステートメント

[Ｒ]

right$ 関数

rightb$ 関数

rmdir ステートメント

rtrim$ 関数

[Ｓ]

searchexe$ 関数

searchfile$ 関数

seek ステートメント/関数

sendkey ステートメント

shell 関数

sjistojis 関数

space$ 関数

static ステートメント

step

stopdestroykey ステートメント

stopdispatchevent ステートメント

stopinputbox ステートメント

stopmacro ステートメント

str$ 関数

string$ 関数

sub ステートメント

[Ｔ]

then

time$ 関数

time0$ 関数

to

trim$ 関数

type ステートメント

[Ｕ]

ucase 関数

ucase$ 関数

until

[Ｖ]

val 関数

versionmacro 関数

[Ｗ]

week$ 関数

weekday 関数

while

writeprofile ステートメント

[Ｘ]

xor 演算子

[記号]

& 演算子

< 演算子

> 演算子

= 演算子

=< 演算子   <= 演算子

=> 演算子   >= 演算子

<> 演算子   >< 演算子

<< 演算子

>> 演算子

+ 演算子

- 演算子

* 演算子

/ 演算子

++ 演算子   -- 演算子

| 演算子

' コメント

&H 16進定数

` 文字定数

#16

#32

#32_NT

#32_95


abs
abs 関数

構文    　abs(num)

機能

　num の絶対値を返します。

例

abs(-100) → 100

abs(100)  → 100

[目次]


appactivate
appactivate 関数

構文    appactivate(string1, string2)

        string1:タイトルバー文字列

        string2:クラス名

機能

　指定したウィンドウタイトル(string1)、クラス名(string2)を持つウィンドウをアクティブにします。タイトル/クラス名が一致したときのみ、ウィンドウをアクティブにします。

　どちらかの引数をヌルストリングにすると、それらは何であっても一致したとみなされます。

　ウィンドウをアクティブにできたときは、そのウィンドウのハンドル(HWND)、アクティブにできなかったときは０を返します。

例  CPPFRAME というクラスを持ったウィンドウをアクティブにする

dim hwnd as HWND

hwnd = appactivate("", "CPPFRAME")

appactivate2 関数

構文    appactivate2(string)

        string:タイトルバー文字列

機能

　指定したウィンドウタイトル(string)を持つウィンドウをアクティブにします。タイトル名の先頭が string に一致すれば、ウィンドウをアクティブにします。これはＭＤＩタイプのアプリをアクティブにするときに使います。

　ウィンドウをアクティブにできたときは、そのウィンドウのハンドル(HWND)、アクティブにできなかったときは０を返します。

例  タイトルの先頭が テスト となっているウィンドウをアクティブにする

dim hwnd as HWND

hwnd = appactivate2("テスト")

[目次]


asc
asc 関数

構文    asc(string)

機能

　文字列string の最初の文字のコードを返します。これは、アスキーコードまたはシフトＪＩＳコードです。

参照    val  chr$

例

asc("A") → &H41

asc("ABC") → &H41

asc("あ") → &H82A0

[目次]


beep
beep ステートメント

構文    beep

機能

　「ピッ」とならします。

[目次]


call
call ステートメント

構文    call 関数/メソッド

機能

　関数を呼び出します。

　関数や返値のあるメソッドは式の一部としてしか呼び出せませんが、返値を無視して呼び出したいときに call ステートメントを使用します。

[目次]


cdeclare
cdeclare ステートメント

構文    cdeclare ｃ言語形式のプロトタイプ宣言

機能

　ＤＬＬで定義されている関数の名前/引数/返値を宣言します。

　cdeclare は必ず dllname でＤＬＬのファイル名を宣言した後に記述します。

　ｃ言語の知識のない方は使用しないでください。

　関数の引数/返値はｃ言語のものを使用します。

　引数に使用できる型は以下の通りです。

int     int *

long    long *

HWND    HWND *

LPSTR

LPCSTR

void

ユーザ定義データ型 *

　返値に使用できる型は以下の通りです。

int

long

HWND

void

例

'user.exe の GetWindowRect を宣言します

dllname "user.exe"

cdeclare void GetWindowRect(HWND, RECT *);

参照    cdeclarea

[目次]


cdeclarea
cdeclarea ステートメント

構文    cdeclarea ｃ言語形式のプロトタイプ宣言

機能

　Win3.1 版: cdeclare と同じ機能です。

　NT&95 版: 宣言した関数名の最後に A をつけます。

例

cdeclarea int GetWindowsDirectory(LPSTR, int);

これは Win3.1 版 では

cdeclare int GetWindowsDirectory(LPSTR, int);

と同じです。

NT&95 版 では

cdeclare int GetWindowsDirectoryA(LPSTR, int);

と同じです。

[目次]


cformat$
cformat$ 関数

構文    cformat$(string, ...)

        string:フォーマット文字列

機能

　フォーマット文字列に従って、引数を文字列に変換し、その文字列を返します。

フォーマット文字列の書式

型変換指定      %<flag><width>type

flag:   - を指定すると左詰めにします。

width:  変換後の文字列の幅です。

type:  以下の文字が使用できます。

        s       文字列型

        d       符号付き10進数

        u       符号なし10進数

        x       符号なし16進数(英字は小文字）

        X       符号なし16進数(英字は大文字）

参照    hex$  str$

例

xx$ = "123"

print cformat$("[%5s]", xx$)    '[  123] が表示される

print cformat$("[%-5d:%5d]", 100, 100)  '[100  :  100] が表示される

[目次]


chdir
chdir ステートメント

構文    chdir string

        string:移動したいディレクトリ

機能

　カレントディレクトリを変更します。ただし、カレントドライブは変更しません。

参照    chdrive  curdir$

例

chdir "C:\WINDOWS"      'ドライブ C: のカレントディレクトリを \WINDOWS にする

mkdir ステートメント

構文    mkdir string

        string:作りたいディレクトリ

機能

　ディレクトリを作成します。

rmdir ステートメント

構文    rmdir string

        string:削除したいディレクトリ

機能

　ディレクトリを削除します。

[目次]


chdrive
chdrive ステートメント

構文    chdrive string

        string:変更したいドライブ名

機能

　カレントドライブを変更します。

　string の先頭１文字目をドライブ名とみなします。

参照    chdir  curdir$

例

chdrive "b"     'カレントドライブを B: にする

[目次]


chr$
chr$ 関数

構文    chr$(num)

機能

　アスキーコードまたはシフトＪＩＳコードを対応する文字に変換し、その文字列を返します。

参照    asc  cformat$

例

chr$(&H41) → "A"

chr$(&H82A0) → "あ"

[目次]


close
close ステートメント

構文    close #num

機能

　指定したファイル番号(open で指定したもの)のファイルを閉じます。

　以後、このファイル番号は再利用できます。

　ファイルの使用を終えたら必ず close でファイルを閉じてください。

[目次]


const
const ステートメント

構文1   const 定数名 = num

構文2   const 定数名 = string

機能

　記号定数を宣言します。

　num には10進定数または、16進定数のみ記述できます。

　string には文字列定数のみ記述できます。

　プロシージャまたは関数の内部で宣言すると、その内部でのみ有効なローカル定数となります。

参照    dim  static

例

const count = 10

const s$ = "あいう"

[目次]


curdir$
curdir$ 関数

構文    curdir$(string)

        string:ドライブ名（省略可能:カレントドライブ）

機能

　指定したドライブのカレントディレクトリを返します。

参照    chdir  chdrive

例

a$ = curdir$("a")       'ドライブ A: のカレントディレクトリ

a$ = curdir$()          'カレントドライブのカレントディレクトリ

[目次]


date$
date$,date0$ 関数

構文    date$

機能

　現在の日付（"yyyy-mm-dd" の形式）を返します。

　月/日が１桁のときはスペースで埋められます。

例

1995- 6- 1

構文    date0$

機能

　現在の日付（"yyyy-mm-dd" の形式）を返します。

　月/日が１桁のときは 0 で埋められます。

例

1995-06-01

参照    time$  month$  week$  weekday

[目次]


ddeinitiate
ddeinitiate 関数

構文    ddeinitiate(string1, string2)

                string1:アプリケーション名

                string2:トピック名

機能

　ＤＤＥ通信を開始し、成功した場合は通信するためのチャネル番号、失敗したときは０を返します。

　ＤＤＥ通信は同時には１つしか実行できません。通信を終了したら ddeterminate を実行してください。

　アプリケーション名やトピック名に何を指定するかは、ＤＤＥサーバとなるアプリケーションのヘルプで確認してください。

　NT&95 版 のみ使用できます。

参照    ddeexecute  ddepoke dderequest$  ddeterminate

例

dim channel

dim htmlfile$

htmlfile$ = "http://www2k.meshnet.or.jp/~araken/"

channel = ddeinitiate("Netscape", "WWW_OpenURL")

if channel <> 0 then

        call appactivate2("Netscape")

else

        channel = ddeinitiate("IExplore", "WWW_OpenURL")

end if

if channel = 0 then

        call shell("start "+htmlfile$)

        exit proc

end if

ddeexecute channel, htmlfile$

ddeterminate channel

[目次]


ddeexecute
ddeexecute ステートメント

構文    ddeexecute num, string

                num:チャネル番号(ddeinitiateが返したもの)

                string:コマンド文字列

機能

　ＤＤＥサーバにコマンドを送ります。

　コマンド文字列に何を指定するかは、ＤＤＥサーバとなるアプリケーションのヘルプで確認してください。

　ＤＤＥサーバが30分間応答しないとエラーになります。ＤＤＥサーバが応答しなくなった場合はＱＸをアクティブにして Ctrl Break を入力してください。強制的にマクロを終了できます。

　NT&95 版 のみ使用できます。

参照    ddeinitiate  ddepoke dderequest$  ddeterminate

[目次]


ddepoke
ddepoke ステートメント

構文    ddepoke num, string1, string2

                num:チャネル番号(ddeinitiateが返したもの)

                string1:コマンド文字列

                string2:データ文字列

機能

　ＤＤＥサーバにデータを送ります。

　コマンド文字列、データ文字列に何を指定するかは、ＤＤＥサーバとなるアプリケーションのヘルプで確認してください。

　ＤＤＥサーバが30分間応答しないとエラーになります。ＤＤＥサーバが応答しなくなった場合はＱＸをアクティブにして Ctrl Break を入力してください。強制的にマクロを終了できます。

　NT&95 版 のみ使用できます。

参照    ddeinitiate  ddeexecute  dderequest$  ddeterminate

[目次]


dderequest$
dderequest$ 関数

構文    dderequest$(num, string)

                num:チャネル番号(ddeinitiateが返したもの)

                string:要求するデータのある項目名

機能

　ＤＤＥサーバからデータを受け取り、その文字列を返します。

　項目名に何を指定するかは、ＤＤＥサーバとなるアプリケーションのヘルプで確認してください。

　ＤＤＥサーバが30分間応答しないとエラーになります。ＤＤＥサーバが応答しなくなった場合はＱＸをアクティブにして Ctrl Break を入力してください。強制的にマクロを終了できます。

　NT&95 版 のみ使用できます。

参照    ddeinitiate  ddeexecute  ddepoke ddeterminate

[目次]


ddeterminate
ddeterminate ステートメント

構文    ddeterminate num

                num:チャネル番号(ddeinitiateが返したもの)

機能

　ＤＤＥ通信を終了します。

　NT&95 版 のみ使用できます。

参照    ddeinitiate  ddeexecute  ddepoke dderequest$

[目次]


ダイアログ座標系

ｘ方向は使用しているフォントの 1/4、ｙ方向は 1/8 を単位とする座標系です。

例

XY

X の左上が (0,0) とすると、Y の左上は (4,0) になります。


dialog
dialog ステートメント,関数

ステートメント

構文    dialog string, num1, num2, num3, num4, num5

                string:タイトルバーに表示する文字列

                num1:Ｘ座標

                num2:Ｙ座標

                num3:幅

                num4:高さ

                num5:ダイアログのスタイル

機能

　ダイアログボックスを作成します。

　ダイアログボックスは１個しか作成できません。以前に作成したものは破棄されます。

　Ｘ座標、Ｙ座標、幅、高さは、ダイアログ座標系で指定します。座標はアプリケーションウィンドウの左上を 0,0 とする相対座標です。

　ダイアログのスタイル には０を指定してください。

　dialog ステートメントを実行した時点ではダイアログボックスは表示されません。作成した後は、control ステートメントでダイアログボックス内に各種コントロールを作成し、dialog 関数でダイアログボックスを表示します。

関数

構文    dialog(num)

                num:ダイアログの表示モード | 制御を返してほしい通知コード

機能

　表示モードに１を指定すると dialog ステートメントで作成したダイアログボックスを表示し、コントロールの状態が変更されるのを待ち、状態が変更されたコントロールのコントロールＩＤを返します。どのような理由で制御を返したかは dlgnotify で調べます。

　表示モードに０を指定すると表示されているダイアログボックスを消します。消すだけで、破棄するわけではないため dialog(1) を再度呼ぶと表示できます。

　通知コードに指定できるのは以下の４種類です。通知コードを指定しないと、BUTTON(BS_PUSHBUTTON / BS_DEFPUSHBUTTON) が押されたときしか制御を返しません。

DLGN_CLICKED

DLGN_DOUBLECLICKED

DLGN_CHANGE

DLGN_SELCHANGE

コントロールと通知コードの関係

BUTTON BS_PUSHBUTTON / BS_DEFPUSHBUTTON

　押されたとき DLGN_CLICKED

BUTTON BS_AUTORADIOBUTTON / BS_AUTOCHECKBOX

　状態が変更されたとき DLGN_CLICKED

LISTBOX

　ダブルクリックされたとき DLGN_DOUBLECLICKED

　選択状態が変更されたとき DLGN_SELCHANGE

COMBOBOX

　ダブルクリックされたとき DLGN_DOUBLECLICKED

　選択状態が変更されたとき DLGN_SELCHANGE

　文字を入力したとき DLGN_CHANGE

EDIT

　文字を入力したとき DLGN_CHANGE

例１

ret = dialog(1)

BUTTON(BS_PUSHBUTTON / BS_DEFPUSHBUTTON)が押されたときのみ制御を返します。

例２

ret = dialog(1 | DLGN_CLICKED)

例１に加え、BUTTON(BS_AUTORADIOBUTTON / BS_AUTOCHECKBOX)の状態が変更されたときも制御を返します。

例３

ret = dialog(1 | DLGN_CLICKED | DLGN_CHANGE)

例２に加え、EDIT, COMBOBOX 内で文字を入力したときにも制御を返します。

参照    control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlghwnd  dlgvisible  通知コード(DIALOG)

[目次]


control
control ステートメント

構文    control string1, num1, string2, num2, num3, num4, num5, num6

                string1:表示文字列

                num1:コントロールＩＤ

                string2:クラス名(コントロールの種類を指定)

                num2:コントロールのスタイル

                num3:Ｘ座標

                num4:Ｙ座標

                num5:幅

                num6:高さ

機能

　ダイアログボックスの中にコントロールを作成します。

　コントロールＩＤはコントロールを識別するための数字で、ダイアログボックス内で重複しない数字を指定してください。

　IDOK(1)、IDCANCEL(2) を除き、なるべく 100以上の値を使用してください。

　コントロールＩＤを必要としないとき(たとえば STATIC のとき)は -1 を指定してもかまいません。このときに限り重複した数字でもかまいません。

　クラス名に指定できる文字列は以下の通りです。

EDIT            エディットコントロール

BUTTON          ボタンコントロール

STATIC          スタティックコントロール

LISTBOX         リストボックスコントロール

COMBOBOX        コンボボックスコントロール

STATUSBAR       ステータスバー

　スタイルはコントロールによって指定できるものが違います。予約定数(CONTROL) を参照してください。予約定数(CONTROL)の中から適切なものを | または or で組み合わせてください。

　Ｘ座標、Ｙ座標、幅、高さは、ダイアログ座標系で指定します。座標はダイアログボックスの左上からの相対座標です。

　STATUSBAR は常にダイアログの最下部に張りつきます。スタイル、Ｘ座標、Ｙ座標、幅、高さに０を指定してください。

　EDIT および LISTBOX はエクスプローラ、ファイルマネージャなどからファイルをドラッグ＆ドロップして、ファイル名を入力できます。

参照    dialog  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlghwnd  dlgvisible  dlgnotify

[目次]


dlgvalue
dlgvalue ステートメント,関数

ステートメント

構文    dlgvalue num1, num2

                num1:コントロールＩＤ

                num2:設定する値

機能

　指定したコントロールＩＤを持つコントロールの状態を変更します。

　コントロールによって以下の状態になります。

● LISTBOX, COMBOBOX → 選択する項目の番号(0～ )、-1 は選択されていない状態になる

● BUTTON(BS_AUTOCHECKBOX が指定されている) → チェックするとき 1、そうでなければ 0

● BUTTON(BS_AUTORADIOBUTTON が指定されている) → 選択するとき 1、そうでなければ 0

関数

構文    dlgvalue(num)

                num:コントロールＩＤ

機能

　指定したコントロールＩＤを持つコントロールの保持している値を返します。

　コントロールによって以下の値を返します。

● LISTBOX(LBS_MULTIPLESEL, LBS_EXTENDEDSEL が指定されていない) → 選択している項目の番号(0～ )、選択されていなければ -1

● BUTTON(BS_AUTOCHECKBOX が指定されている) → チェックされているとき 1、そうでなければ 0

● BUTTON(BS_AUTORADIOBUTTON が指定されている) → 選択されているとき 1、そうでなければ 0

● COMBOBOX(CBS_SIMPLE, CBS_DROPDOWN が指定されている) → 選択している項目の番号(0～ )、選択されていなければ -1、ただし、項目一覧と違う文字列が入力されているときは -1

● COMBOBOX(CBS_DROPDOWNLIST が指定されている) → 選択している項目の番号(0～ )、選択されていなければ -1

参照    dialog  control  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlghwnd  dlgvisible  dlgnotify

[目次]


dlgitemcmd
dlgitemcmd 関数

構文    dlgitemcmd(num1, num2, param1, param2)

                num1:コントロールＩＤ

                num2:メッセージ番号

                param1:wParam の値

                param2:lParam の値

機能

　コントロールにメッセージを送ります。dlgvalue, dlglistboxarray, dlgtext$ では制御不可能なことも実現できます。

　実際にはｃ言語レベルで

return(SendMessage(GetDlgItem(hwndDialog, num1), num2, param1, param2);

が行われます。

　この関数で使用する num2, param1, param2 の詳しい値は Windows API のヘルプを参照してください。

参照    dialog  control  dlgvalue  dlglistboxarray  dlgtext$  dlgenable  dlghwnd  dlgvisible  dlgnotify

[目次]


dlglistboxarray
dlglistboxarray ステートメント,関数

ステートメント

構文    dlglistboxarray num, string配列

                num:コントロールＩＤ

                string配列:項目文字列

機能

　LISTBOX, COMBOBOX の項目を string配列 で置き換えます。

　string配列の０番目の要素は使用されません。また、ヌルストリングがあると、それ以降の要素は使用されません。

関数

構文    dlglistboxarray(num, string配列)

                num:コントロールＩＤ

                string配列:項目文字列

機能

　LISTBOX, COMBOBOX の項目を string配列 に代入し、代入した数を返します。

参照    dialog  control  dlgvalue  dlgitemcmd  dlgtext$  dlgenable  dlghwnd  dlgvisible  dlgnotify

[目次]


dlgtext$
dlgtext$ ステートメント,関数

ステートメント

構文    dlgtext$ num, string

                num:コントロールＩＤ

                string:設定する文字列

機能

　指定したコントロールＩＤを持つコントロールの表示文字列を変更します。

　以下のコントロールで使用できます。

EDIT

CBS_SIMPLE, CBS_DROPDOWN の指定された COMBOBOX

BUTTON

STATIC

STATUSBAR

関数

構文    dlgtext$(num)

                num:コントロールＩＤ

機能

　指定したコントロールＩＤを持つコントロールの保持している文字列を返します。

　すべてのコントロールで使用できます。

　LISTBOX や、CBS_DROPDOWNLIST の指定された COMBOBOX では、選択された文字列を返します。

参照    dialog  control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgenable  dlghwnd  dlgvisible  dlgnotify

[目次]


dlgenable
dlgenable ステートメント,関数

ステートメント

構文    dlgenable num1, num2

                num1:コントロールＩＤ

                num2:使用可能フラグ

機能

　コントロールを使用可能または不可能にします。

　使用可能フラグに 0 を指定すると、使用不可能になります。0 以外を指定すると、使用可能になります。

関数

構文    dlgenable(num)

                num:コントロールＩＤ

機能

　コントロールが使用可能なら、-1 を返し、使用不可能なら 0 を返します。

参照    dialog  control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlghwnd  dlgvisible  dlgnotify

[目次]


dlghwnd
dlghwnd 関数

構文    dlghwnd(num)

                num:コントロールＩＤ

機能

　コントロールのウィンドウハンドルを返します。

　コントロールＩＤに 0 を指定すると、ダイアログのウィンドウハンドルを返します。

参照    dialog  control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlgvisible  dlgnotify

[目次]


dlgvisible
dlgvisible ステートメント,関数

ステートメント

構文    dlgvisible num1, num2

                num1:コントロールＩＤ

                num2:表示フラグ

機能

　コントロールを表示または非表示にします。

　表示フラグに 0 を指定すると、非表示になります。0 以外を指定すると、表示されます。

関数

構文    dlgvisible(num)

                num:コントロールＩＤ

機能

　コントロールが表示されていれば、-1 を返し、表示されていなければ 0 を返します。

参照    dialog  control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlghwnd  dlgnotify

[目次]


dlgnotify
dlgnotify 関数

構文    dlgnotify()

機能

　dialog 関数が制御を返した理由を調べます。

　ボタンが押されたとき DLGN_CLICKED

　ダブルクリックされたとき DLGN_DOUBLECLICKED

　選択状態が変更されたとき DLGN_SELCHANGE

　文字を入力したとき DLGN_CHANGE

参照    control  dlgvalue  dlgitemcmd  dlglistboxarray  dlgtext$  dlgenable  dlgvisible

[目次]


dim
dim ステートメント

構文    dim 変数名 as 型 [, 変数名2 as 型2 , ...]

機能

　変数を宣言します。変数は必ず dim または static で宣言しなければなりません。

　sub（プロシージャ）または function（関数）の内部で宣言された変数は、そのプロシージャまたは関数の内部でのみ使用可能なローカル変数となり、外部で宣言された変数は、複数のプロシージャや関数で使用できるグローバル変数となります。

　dim で宣言したローカル変数は、プロシージャまたは関数が呼ばれると、数値変数は 0、文字列変数はヌルストリングに初期化されます。

　, で区切って、複数の変数を宣言できます。

　「as 型」は省略することができます。このとき変数名の最後の文字が $ であれば string、それ以外の時は long とみなされます。

使用できる型は以下の通りです。

integer         整数型

long            長整数型

string          可変長文字列型

string[xx]      固定領域文字列型（xx は10000まで）

HWND            Win3.1 版 のとき integer、NT&95 版 のとき long と同じ

HDC             Win3.1 版 のとき integer、NT&95 版 のとき long と同じ

default         Win3.1 版 のとき integer、NT&95 版 のとき long と同じ

xxxxx           ユーザ定義データ型

　また、固定領域文字列型/ユーザ定義データ型以外は配列にすることができます。配列の添字（インデックス）は [] または () でくくります。

例

dim a$ as string

dim j as integer, x as long

dim array[10] as long        'array[0] から array[10] までの配列

                             'dim array(10) as long でもよい

type RECT               'RECT というユーザ定義データ型を定義

        Left as integer

        Top as integer

        Right as integer

        Bottom as integer

end type

dim rc as RECT          'RECT 型の変数 rc

参照    const

[目次]


dir$
dir$ 関数

構文1   dir$(string, num)

        string:検索するファイル名

        num:検索するファイルの属性（省略可能:&H21）

構文2   dir$()

機能1

　string で指定されたファイルを検索します。

　最初の検索の時に 構文1 を使用します。

属性に使用できる数値は以下の通りです。これらを or または + で組み合わせて指定できます。

0       通常のファイル

1       書き込み禁止ファイル

2       隠しファイル

4       システムファイル

8       ボリュームラベル

16,&H10 ディレクトリ

32,&H20 アーカイブ属性

　ディレクトリ(&H10)を指定したときは、ディレクトリのみが検索されます。

機能2

　構文1 で検索した後、２つ目以降のファイルを検索するときに使用します。

　機能1,2 とも、検索できたときは、ファイル名を、これ以上ファイルが見つからなかったときはヌルストリングを返します。

参照    getattr  filedatetime$  filelen  fullpath$  searchfile$

例   A:\ にあるファイルを配列item に格納します

dim item$[100]

dim d$,j

j = 1

d$ = dir$("A:\*.*")

do while d$<>""

        item$[j] = d$

        j = j+1

        d$ = dir$()

loop

[目次]


dllname
dllname ステートメント

構文    dllname "ＤＬＬファイル名"

機能

　cdeclare で宣言するＤＬＬ関数のあるファイル名を宣言します。

　ＤＬＬファイル名が PATH の通っているディレクトリやシステムディレクトリ以外にあるときはディレクトリ名まで記述する必要があります。

注意

krnl386.exe, gdi.exe, user.exe の場合はそれぞれ以下のように記述できます。

この３つのＤＬＬを使用するときはなるべく以下の書式で記述してください。

dllname KERNEL

dllname GDI

dllname USER

NT&95 版 のときはそれぞれ、kernel32.dll, gdi32.dll, user32.dll となります。

[目次]


do
do .. loop ステートメント

構文1   do while condition

                ステートメント...

        loop

構文2   do until condition

                ステートメント...

        loop

構文3   do

                ステートメント...

        loop while condition

構文4   do

                ステートメント...

        loop until condition

機能

　指定された条件 condition によりループします。

機能1,3

　condition が０以外の時ループを実行します。

機能2,4

　condition が０の時ループを実行します。

構文1,2 は condition の値により１回もループが実行されないことがあります。

構文3,4 は condition に関わらず最低１回はループが実行されます。

exit do ステートメント

構文    exit do

機能

　ただちに do .. loop ループを抜けます。

参照    for .. next

例   A:\ にあるファイルを配列item に格納します

dim item$[100]

dim d$,j

j = 1

d$ = dir$("A:\*.*")

do while d$<>""

        if j > 100 then exit do

        item$[j] = d$

        j = j+1

        d$ = dir$()

loop

[目次]


doevents
doevents ステートメント

構文    doevents

機能

　他のアプリケーションが実行できるように Windows に制御を返します。

　sendkey を実行した後、すぐにキーを送出したいときに doevents を実行してください。

[目次]


dprint
dprint ステートメント

構文    dprint 式

機能

　数値または文字列をデバッグウィンドウに表示します。デバッグ時に変数の値を調べるときに使用します。

　数値式または文字列式を ; または , で区切って複数記述できます。

　";" で区切ると、連続して出力し、"," で区切ると、タブを出力します。また、最後に ";" を記述すると、改行しません。

　１度に出力できるのは最大1000バイト程度までです。

例

dprint j                '変数 j の値を出力し、改行します

dprint j;               '変数 j の値を出力し、改行しません

dprint a$;j;k           '変数 a$ j k の値を出力し、改行します

[目次]


end
end ステートメント

構文1   end

構文2   end sub

構文3   end function

構文4   end if

構文5   end type

機能1

　マクロを終了します。

　function の内部で end を使用してマクロを終了させることはできません

[目次]


environ$
environ$ 関数

構文1   environ$(num)

構文2   environ$(string)

機能1

　num 番目(1～)に定義されている環境変数文字列を返します。

　ABC=XYZ という環境変数があるとき "ABC=XYZ" を返します。

機能2

　環境変数 string で定義されている文字列を返します。

　ABC=XYZ という環境変数があるとき environ$("ABC") は "XYZ" を返します。

返値

　機能1,2 とも、環境変数が見つかったときはその文字列を、見つからなかったときはヌルストリングを返します。

例 SET TMP=C:\TMP が DOSで実行されているとき

environ$("TMP") → "C:\TMP"

例

dim j, e$

j = 1

do

        e$ = environ$(j)

        if e$ = "" then exit do

        'ここで e$ を使用する。たとえば dprint e$

        j = j+1

loop while 1

[目次]


eof
eof 関数

構文    eof(num)

機能

　指定したファイル番号のファイルを終端まで読み切ったかどうかを調べます。

　終端まで読み切っているときは -1 、そうでなければ 0 を返します。

参照    open

[目次]


exit
exit ステートメント

構文1   exit do

構文2   exit for

構文3   exit sub

構文4   exit function

[目次]


filedatetime$
filedatetime$ 関数

構文    filedatetime$(string)

        string:ファイル名

機能

　string で指定されたファイルのタイムスタンプを "??/??/?? ??:??:??" のようにフォーマットした文字列を返します。

　指定したファイルが存在しないときはヌルストリングを返します。

参照    dir$  getattr  filelen

[目次]


filelen
filelen 関数

構文    filelen(string)

        string:ファイル名

機能

　string で指定されたファイルの長さ（サイズ）を返します。

　指定したファイルが存在しないときは -1 を返します。

参照    dir$  getattr  filedatetime$

[目次]


for
for .. next ステートメント

構文    for 数値変数 = num1 to num2 step num3

                ステートメント...

        next

                num1:開始値

                num2:終了値

                num3:増分値（省略可能:1  開始値>終了値のときは -1）

機能

　数値変数を num1 から num2 まで、num3 きざみで変化させループします。

　num3＞０ のときは 数値変数＞num2になると、num3＜０ のときは 数値変数＜num2 になるとループは終了し、next の次のステートメントが実行されます。最初から終了条件が満たされているとfor .. next ループ内のステートメントは一回も実行されません。

　num3 を省略するときは step も省略します。

　数値変数に配列を指定することはできません。

exit for ステートメント

構文    exit for

機能

　for .. next ループをただちに抜けます。

参照    do .. loop

open ステートメント

構文    open string for input   as #num

                        output

                        append

                        binary

機能

　for により、open ステートメントでファイルを開くときの動作を指定します。

[目次]


freefile
freefile 関数

構文    freefile()

機能

　利用可能なファイル番号(1～5)を返します。

　利用可能なファイル番号が無いときは 0 を返します。

例

dim fnum

fnum = freefile()

open "test.txt" for input as #fnum

[目次]


fullpath$
fullpath$ 関数

構文    fullpath$(string)

        string:ファイル名

機能

　string で指定されたファイルをフルパスに変換した文字列を返します。

　正しくフルパスに変換できなかったときはヌルストリングを返します。

参照    dir$  searchfile$

例

カレントディレクトリが A:\TEST のとき

fullpath$("TEST.MAC") → A:\TEST\TEST.MAC

[目次]


function
function ステートメント

構文    function 関数名(引数のならび, ... ) as 返値の型

                ステートメント...

        end function

機能

　関数を定義します。

　引数は dim と同様の書式で10個まで宣言できます。指定できる型は、integer,long,HWND で、配列を指定することはできません。返値の型も同様です。

　「as 返値の型」を省略すると long とみなします。

　値を返すには 「関数名」自体に値を代入します。

　関数を再帰的に（自分自身を）呼び出すことはできません。

　関数の内部で end でマクロを終了させることはできません。

例

'num2 は値を2倍にして返す関数

function num2(num)

        num2 = num * 2

end function

proc main

        print str$(num2(100))

end proc

参照    sub

exit function ステートメント

構文    exit function

機能

　ただちに function を抜けます。

[目次]


getattr
getattr 関数

構文    getattr(string)

        string:ファイル名

機能

　string で指定されたファイルの属性を返します。

　指定したファイルが存在しないときは -1 を返します。

　属性の意味は dir$ で指定するものと同じです。

参照    filedatetime$  filelen

[目次]


getfilename$
getfilename$ 関数

構文    getfilename$(string1, string2, string3)

        string1:ディレクトリ名（省略可能:カレントディレクトリ）

        string2:ファイル名（省略可能:"*.*"）

        string3:タイトル（省略可能:""）

機能

　コモンダイアログを表示してファイルを１つ選択し、そのファイル名を返します。

　ESC を押して処理を中止したときはヌルストリングを返します。

例

f$ = getfilename$("c:\src", "*.c;*.h", "ソースファイルの編集")

[目次]


getprofile$
getprofile$ 関数

構文    getprofile$(string1, string2, string3)

        string1:セクション名

        string2:キー名

        string3:ファイル名（省略可能:"QMACPROF.INI"）

機能

　INI ファイルに記録されている情報を読み込み、その文字列を返します。見つからなかったときはヌルストリングを返します。

例

QMACPROF.INI の内容が以下の時

[ABC]

aaa=abcdefg

EFG=1000

getprofile$("ABC", "aaa") → "abcdefg"

getprofile$("ABC", "EFG") → "1000"

getprofile$("xxx", "yyy") → ""

writeprofile ステートメント

構文    writeprofile string1, string2, string3, string4

        string1:セクション名

        string2:キー名

        string3:文字列名

        string4:ファイル名（省略可能:"QMACPROF.INI"）

機能

　INI ファイルに、指定した情報を書き込みます。

　ファイル名を指定するときは @@QxDirectory$ + "\ファイル名" のように、ＱＸのあるディレクトリに作成することを推奨します。

例

writeprofile "ABC", "EFG", "2000"

を実行すると、QMACPROF.INI は以下のようになります。

[ABC]

EFG=2000

[目次]


hex$
hex$ 関数

構文    hex$(num)

機能

　数値num を16進数の文字列に変換し、その文字列を返します。

参照    chr$  cformat$  str$

例

hex$(100) → "64"

hex$(&H20) → "20"

[目次]


if
if .. then .. end if ステートメント

構文1   if condition1 then

                ステートメント１...

        elseif condition2 then

                ステートメント２...

        else

                ステートメント３...

        end if

構文2   if condition then ステートメント

機能1

　condition1 が０以外の時 ステートメント１を実行します。

　condition1 が０で、condition2 が０以外の時 ステートメント２を実行します。

　どちらでもないときは、ステートメント３が実行されます。

　elseif condition then は任意の数だけ記述できます。

機能2

　condition が０以外の時 ステートメントを実行します。

[目次]


imemode
imemode ステートメント

構文    imemode num

機能

　ＩＭＥを制御します。

num

1       ＩＭＥをＯＮにします

2       ＩＭＥをＯＦＦにします

4       ＩＭＥを全角ひらがなモードにします

5       ＩＭＥを全角カタカナモードにします

6       ＩＭＥを半角カタカナモードにします

7       ＩＭＥを全角英数モードにします

参照    imestatus

[目次]


imestatus
imestatus 関数

構文    imestatus

機能

　現在のＩＭＥの状態を返します。

2       ＩＭＥはＯＦＦ

4       全角ひらがなモード

5       全角カタカナモード

6       半角カタカナモード

7       全角英数モード

0       その他の時

参照    imemode

[目次]


inputb$
inputb$ 関数

構文    inputb$(num1, #num2)

機能

　ファイル番号num2 のファイルから num1 バイト読み込み、読み込んだデータを文字列にして返します。

参照    open lineinput

[目次]


inputbox
inputbox 関数

構文    inputbox(string1, string2, num)

        string1:プロンプト

        string2:タイトル(省略可能:"")

        num:デフォルト数値(省略可能:なし)

機能

　ダイアログで数値を入力させ、入力された値を返します。

　ｷｬﾝｾﾙしたときは INPUTBOX_CANCEL(&H80000000) を返します。

参照    予約定数(INPUTBOX)

inputbox$ 関数

構文    inputbox$(string1, string2, string3, string4)

        string1:プロンプト

        string2:タイトル(省略可能:"")

        string3:デフォルト文字列(省略可能:"")

        string4:ｷｬﾝｾﾙしたとき返す文字列(省略可能:chr$(&H1B))

機能

　ダイアログで文字列を入力させ、入力された文字列を返します。

　ｷｬﾝｾﾙしたときは 「ｷｬﾝｾﾙしたときのデフォルト文字列」 を返します。

参照    listbox  msgbox  popupmenu

例

dim num

num = inputbox("数字を入力してください", "数字入力", 5)

dim s$

s$ = inputbox$("文字を入力してください", "文字入力", "TEST")

stopinputbox ステートメント

構文    stopinputbox num

機能

　inputbox または、inputbox$ のダイアログを表示中に ESC を押すか ｷｬﾝｾﾙ ボタンを押すと、INPUTBOX_CANCEL(&H80000000) または 「ｷｬﾝｾﾙしたとき返す文字列」 を返して処理を続行しますが、マクロを中止できるようにもできます。

　numが 0 のとき INPUTBOX_CANCEL(&H80000000) または 「ｷｬﾝｾﾙしたとき返す文字列」 を返し、処理を続行します。

　numが 0 以外のときマクロを中止します。

　マクロ実行直後は stopinputbox 0 の状態になっています。

[目次]


instr
instr inrstr 関数

構文1   instr(num, string1, string2)

構文2   inrstr(num, string1, string2)

        num:検索位置(1～ )（省略可能:1）

        string1:検索される文字列

        string2:検索する文字列

機能1

　string1 の num 文字目以降から string2 が最初に現れる文字位置を返します。

　string2 が見つからなかったときは 0 を返します。

　全角文字も１文字として扱います。

　num を省略するときは , も省略します。

機能2

　最後に現れる文字位置を返す点を除き instr と同じです。

instrb inrstrb 関数

構文1   instrb(num, string1, string2)

構文2   inrstrb(num, string1, string2)

        num:検索位置(1～ )（省略可能:1）

        string1:検索される文字列

        string2:検索する文字列

機能1

　string1 の num バイト目以降から string2 が最初に現れるバイト位置を返します。

　string2 が見つからなかったときは 0 を返します。

　num を省略するときは , も省略します。

機能2

　最後に現れる文字位置を返す点を除き instrb と同じです。

例

instr(2, "ABCDE", "CD") → 3

instr("ABCDE", "CD") → 3

instr(4, "ABCDE", "C") → 0

instr(2, "あいう", "う") → 3

instrb(2, "あいう", "う") → 5

inrstr("a.b.c.d", ".") → 6

[目次]


inputchar
inputchar 関数

構文    inputchar

機能

　文字の入力を待ち、入力した文字を返します。

　ファンクションキーや Delete キーなどの特殊キーは無視されます。

inputkey 関数

構文    inputkey

機能

　キーの入力を待ち、入力したキーのキーコードを返します。

　Shift Ctrl などのシフトキーは無視されます。

参照    予約定数(KEY)

例

dim key

key = inputkey

print hex$(key)

参照    iskeypressed  anykeypressed  iskeydown

[目次]


isalpha
isalpha 関数

構文    isalpha(num)

        num:調べる数値

　num が英字のとき -1 を、そうでなければ 0 を返します

　islower(num) or isupper(num) と同じです。

isalnum 関数

構文    isalnum(num)

        num:調べる数値

機能

　num が英字か数字のとき -1 を、そうでなければ 0 を返します。

　isalpha(num) or isdigit(num) と同じです。

isdigit 関数

構文    isdigit(num)

        num:調べる数値

機能

　num が数字のとき -1 を、そうでなければ 0 を返します。

　`0` <= num and num <= `9` と同じです。

islower 関数

構文    islower(num)

        num:調べる数値

機能

　num が英小文字のとき -1 を、そうでなければ 0 を返します。

　`a` <= num and num <= `z` と同じです。

isupper 関数

構文    isupper(num)

        num:調べる数値

機能

　num が英大文字のとき -1 を、そうでなければ 0 を返します。

　`A` <= num and num <= `Z` と同じです。

isxdigit 関数

構文    isxdigit(num)

        num:調べる数値

機能

　num が16進数字のとき -1 を、そうでなければ 0 を返します。

　isdigit(num) or (`A` <= num and num <= `F`) or (`a` <= num and num <= `f`) と同じです。


iskeypressed
iskeypressed 関数

構文    iskeypressed(num)

        num:調べるキーコード

機能

　以前の iskeypressed 呼び出し以後、指定したキーコードを持つキーが押されたかを調べます。

　押されたときは -1、押されなかったきは 0 を返します。

　num に 0 を指定すると、iskeypressed 呼び出しをリセットします。

　iskeypressed を使用するときは、マクロの先頭付近に iskeypressed 呼び出しを入れてください。また、ダイアログボックスなど、キー入力を必要とするメソッドを実行した後も iskeypressed 呼び出しを入れてください。

例

call iskeypressed(KEY_RETURN)  'KEY_RETURN の状態をリセットするため

ここでいろいろ処理する

if iskeypressed(KEY_RETURN) then

        '押された

else

        '押されなかった

end if

上の例は リターンキー(Enter) しか使用しない場合の例ですが、たくさんのキーを使用するときは、リセットのための iskeypressed がたくさん必要になってしまいます。複数のキーを使用するときは iskeypressed(0) を呼び出してください。これで、すべてのキーをリセットできます。

例

call iskeypressed(0)  'すべてのキーの状態をリセットする

anykeypressed 関数

構文    anykeypressed()

機能

　どれかのキーが押されたらそのキーのキーコード、押されなければ 0 を返します。

　anykeypressed を使用する前に stopdispatchevent 1 を実行してください。

iskeydown 関数

構文    iskeydown(num)

        num:調べるキーコード

機能

　指定したキーコードを持つキーが押されているか調べます。

　押されているときは -1、押されていないときは 0 を返します。

　iskeydown は あるキーが押し下げられた状態にあるかを調べるときに使用します。

参照    予約定数(KEY)

        inputchar  inputkey

[目次]


jistosjis
jistosjis 関数

構文    jistosjis(num)

機能

　数値num をＪＩＳコードとみなして、シフトＪＩＳコードに変換します。

　num が正しいＪＩＳコードでないときは０を返します。

sjistojis 関数

構文    sjistojis(num)

機能

　数値num をシフトＪＩＳコードとみなして、ＪＩＳコードに変換します。

　num が正しいシフトＪＩＳコードでないときは０を返します。

例

jistosjis(&H2121) → &H8140

sjistojis(`あ`) → &H2422

[目次]


kill
kill ステートメント

構文    kill string

        string:削除するファイル名

機能

　指定したファイルを削除します。

　ファイルを削除できなくてもエラーにはなりません。削除できたかどうかは、dir$ を使います。

例

kill "c:\tmp\filename.tmp"

参照    open name

[目次]


lcase
lcase 関数

構文    lcase(num)

機能

　数値num をアスキーコードとみなして、半角英大文字であれば小文字に変換し、その値を返します。

　半角英大文字以外の時は、num をそのまま返します。

　全角の英大文字は変換しません。

lcase$ 関数

構文    lcase$(string)

機能

　string 中の半角英大文字を小文字に変換し、その文字列を返します。

　全角の英大文字は変換しません。

参照    ucase  ucase$

例

lcase(`A`) → &H61 つまり `a`

lcase(`a`) → &H61 つまり `a`

lcase$("ABcd") → "abcd"

[目次]


left$
left$ 関数

構文    left$(string, num)

機能

　string の左から num 文字を取り出し、取り出した文字列を返します。

　全角文字も１文字として扱います。

leftb$ 関数

構文    leftb$(string, num)

機能

　string の左から num バイトを取り出し、取り出した文字列を返します。

参照    right$  rightb$  mid$  midb$

例

left$("123", 1) → "1"

left$("あいう", 1) → "あ"

leftb$("あいう", 2) → "あ"

[目次]


len
len 関数

構文    len(string)

機能

　string の文字数を返します。

　全角文字も１文字として扱います。

lenb 関数

構文    lenb(string)

機能

　string のバイト数を返します。

例

len("123") → 3

len("あいう") → 3

lenb("あいう") → 6

[目次]


lineinput
lineinput ステートメント

構文    lineinput #num, string

　指定したファイル番号のファイルから１行読み込み string に代入します。

　行の区切りは chr$(&h0d) または chr$(&h0a) です。

　string には可変長文字列型のみ指定できます。固定領域文字列型や配列は指定できません。

参照    open

[目次]


listbox
listbox 関数

構文    listbox(string配列, string1, string2, num)

        string配列:リストボックス項目文字列

        string1:ダイアログのプロンプト(省略可能:"")

        string2:ダイアログのタイトル(省略可能:"")

        num:０以外の時固定ピッチフォントを使用する(省略可能:0)

機能

　ダイアログの中にリストボックスを表示し、何番目の項目が選択されたかを返します。ESC を押すか、ｷｬﾝｾﾙボタンを押して、ダイアログを取り消したときは０を返します。

　string配列の０番目の要素は使用されません。また、ヌルストリングがあると、それ以降の要素は使用されません。

　string1 でリストボックスの上部に表示される文字列を指定できます。chr$(10) を間に含めることにより２行まで指定できます。

参照    inputbox  inputbox$  msgbox  popupmenu

例

dim sel

dim item$[10]

item$[1] = "項目１"

item$[2] = "項目２"

item$[3] = "項目３"

sel = listbox(item$, "選んでください", "タイトル")

[目次]


ltrim$
ltrim$ 関数

構文    ltrim$(string)

機能

　string の先頭のスペースを削除し、その文字列を返します。

trim$ 関数

構文    trim$(string)

機能

　string の先頭/末尾のスペースを削除し、その文字列を返します。

rtrim$ 関数

構文    rtrim$(string)

機能

　string の末尾のスペースを削除し、その文字列を返します。

例

ltrim$(" A ") → "A "

rtrim$(" A ") → " A"

trim$(" A ") → "A"

[目次]


mid$
mid$ 関数

構文    mid$(string, num1, num2)

機能

　string の num1 文字目から num2 文字取り出し、その文字列を返します。

　num2 は省略可能で、省略すると num1 文字目からすべての文字を取り出します。

　全角文字も１文字として扱います。

midb$ 関数

構文    midb$(string, num1, num2)

機能

　string の num1 バイト目から num2 バイト取り出し、その文字列を返します。

　num2 は省略可能で、省略すると num1 バイト目からすべての文字を取り出します。

参照    left$  leftb$  right$  rightb$

例

mid$("abc", 2, 1) → "b"

mid$("あいう", 2, 1) → "い"

mid$("abc", 2) → "bc"

midb$("あいう", 3, 2) → "い"

[目次]


month$
month$ 関数

構文    month$(num)

        num:

                1  "January" を返します

                2  "February"

                3  "March"

                4  "April"

                5  "May"

                6  "June"

                7  "July"

                8  "August"

                9  "September"

                10 "October"

                11 "November"

                12 "December"

                0  今日の月を返します

機能

　指定した数値を月文字列に変換し、その文字列を返します。

参照    date$  time$  week$  weekday

例

month$(1) → "January"

month$(0) → "June"    (実行した日が６月だったとき)

[目次]


msgbox
msgbox 関数

構文    msgbox(string1, num, string2)

        string1:ダイアログに表示するメッセージ

        num:ダイアログのタイプ(省略可能:0)

        string2:タイトルバー文字列(省略可能:"")

機能

　ダイアログを表示し、選択されたボタンの種別を返します。

　num に指定できる数値は以下の通りです。

　それぞれのグループから１つずつ選んで or または + で組み合わせて使います。

ボタングループ

MB_OK                    0      OK ボタン

MB_OKCANCEL              1      OK ｷｬﾝｾﾙ ボタン

MB_ABORTRETRYIGNORE      2      中止 再試行 無視 ボタン

MB_YESNOCANCEL           3      はい いいえ ｷｬﾝｾﾙ ボタン

MB_YESNO                 4      はい いいえ ボタン

MB_RETRYCANCEL           5      再試行 ｷｬﾝｾﾙ ボタン

アイコングループ

MB_ICONHAND         &H0010      STOP アイコン

MB_ICONSTOP         &H0010      STOP アイコン

MB_ICONQUESTION     &H0020      ？ アイコン

MB_ICONEXCLAMATION  &H0030      ！ アイコン

MB_ICONASTERISK     &H0040      ｉ アイコン

MB_ICONINFORMATION  &H0040      ｉ アイコン

デフォルトボタングループ

MB_DEFBUTTON1       &H0000      １番目のボタンがデフォルト

MB_DEFBUTTON2       &H0100      ２番目のボタンがデフォルト

MB_DEFBUTTON3       &H0200      ３番目のボタンがデフォルト

ダイアログ種別グループ

MB_APPLMODAL        &H0000      通常のダイアログ

MB_SYSTEMMODAL      &H1000      他のアプリの実行を禁止

返値

IDOK      1     ＯＫ ボタンが押された

IDCANCEL  2     ｷｬﾝｾﾙ ボタンが押された

IDABORT   3     中止 ボタンが押された

IDRETRY   4     再試行 ボタンが押された

IDIGNORE  5     無視 ボタンが押された

IDYES     6     はい ボタンが押された

IDNO      7     いいえ ボタンが押された

参照    予約定数(DIALOG)

        inputbox  inputbox$  listbox  popupmenu

例

dim sel

sel = msgbox("よろしいですか？", MB_YESNO, "確認")

if sel = IDYES then

        'はいを選んだときの処理

else

        'いいえを選んだときの処理

end if

[目次]


name
name ステートメント

構文    name string1 as string2

機能

　ファイル名string1 を ファイル名string2 に変更します。

　ワイルドカードを使用することはできません。

例

name "test.txt" as "test.bak"

参照    open kill

[目次]


open
open ステートメント

構文1   open string for input as #num

構文2   open string for output as #num

構文3   open string for append as #num

構文4   open string for binary as #num

　それぞれ、指定したファイル名(string)をファイル番号num(1～5) を使用して開きます。

　num は freefile 関数で取得することもできます。

機能1

　読み込み用に開きます。これ以後、lineinput を使用して内容を読み込めます。

　指定したファイルが存在しないときはエラーになります。

機能2

　書き込み用に開きます。これ以後、print を使用してデータを書き込めます。

　指定したファイルが存在するときはサイズ０に切りつめられるので注意してください。

　指定したファイルが存在しないときは新規に作成されます。

機能3

　ファイルの末尾に追加書き込み用に開きます。これ以後、print を使用してデータを書き込めます。必ずファイルの末尾に書き込まれる点に注意してください。

　指定したファイルが存在しないときは新規に作成されます。

機能4

　読み書き用に開きます。seek で読み書き位置を変更して inputb$ で読み込んだり、print で書き込んだりできます。

　指定したファイルが存在しないときは新規に作成されます。

■例１ test.txt を読み込み、文書に挿入します。

dim a$

open "test.txt" for input as #1

do until eof(1)

        lineinput #1, a$

        @Input a$

        @CharReturn2

loop

close #1

■例２ ＱＸのあるディレクトリの file.txt にカレント文書のファイル名を追加します。

open @@QxDirectory$ + "\" + "file.txt" for append as #1

print #1, @Pathname$

close #1

■例３ test.txt を test.bak に１行単位でコピーします。

dim a$

open "test.txt" for input as #1

open "test.bak"  for output as #2

do until eof(1)

        lineinput #1, a$

        print #2, a$

loop

close #1

close #2

■例４ test.txt を test.bak に10000バイト単位でコピーします。

　入出力の単位が大きくなるので例３よりもかなり高速です。

dim a$

open "test.txt" for input as #1

open "test.bak" for output as #2

do until eof(1)

        a$ = inputb$(10000, #1)

        print #2, a$;

loop

close #1

close #2

[目次]


popupmenu
popupmenu 関数

構文    popupmenu(string配列, num1, num2)

        string配列:メニュー文字列

        num1:メニューを表示するｘ座標(省略可能:-1)

        num2:メニューを表示するｙ座標(省略可能:-1)

機能

　ポップアップメニューを表示し、何番目のメニューが選択されたかを返します。ESC を押してメニューを取り消したときは０を返します。

　string配列の０番目の要素は使用されません。また、ヌルストリングがあると、それ以降の要素は使用されません。

　また、要素の最初の文字が chr$(1) のときは、メニュー項目がグレー表示され、選択できなくなります。

　要素の最初の文字が chr$(2) のときは、チェックマークがつけられます。

　最初の文字が > のときは階層化メニューにします。

　< だけの行があると、階層を下げます。

　- だけの行があるとセパレータを表示します。

　num1, num2 でポップアップメニューを表示する座標を指定できます。ウィンドウからの相対座標での指定となります。省略すると、マウスカーソルのある位置に表示されます。

参照    inputbox  inputbox$  listbox  msgbox

例1

dim sel

dim item$[10]

item$[1] = "項目１"

item$[2] = "項目２"

item$[3] = chr$(1) + "項目３"   'この項目はグレー表示され選択できない

sel = popupmenu(item$)

例2

dim sel

dim item$[10]

item$[1] = "項目１"

item$[2] = ">項目２"

item$[3] =          "階層化１"

item$[4] =          "階層化２"

item$[5] = "<"

item$[6] = "-"

item$[7] = "最後の項目"

sel = popupmenu(item$)

[目次]


print
print ステートメント

構文1   print string

        string:ステータスバーに表示する文字列(省略可能:"")

機能1

　ステータスバーに文字列を表示します。

例

print ""                        (ステータスバーの内容を消す)

print "処理を終了しました"

構文2   print #num, [任意の num または string]

機能2

　指定したファイル番号のファイルに任意のデータを書き込みます。

　; または , で区切って複数の式を記述できます。

　, で区切ると、間にタブ(chr$(9))を書き込みます。

　行末に ; をつけると改行コードを書き込みません。

参照    open

[目次]


right$
right$ 関数

構文    right$(string, num)

機能

　string の右から num 文字を取り出し、取り出した文字列を返します。

　全角文字も１文字として扱います。

rightb$ 関数

構文    rightb$(string, num)

機能

　string の右から num バイトを取り出し、取り出した文字列を返します。

参照    left$  leftb$  mid$  midb$

例

right$("abc", 1) → "c"

right$("あいう", 1) → "う"

rightb$("あいう", 2) → "う"

[目次]


searchexe$
searchexe$ 関数

構文    searchexe$(string)

        string:さがしたいプログラムファイル名

機能

　string をレジストリからさがし、そのパス名を返します。見つからなければヌルストリングを返します。

　レジストリに正しくインストールするタイプのアプリケーションでなければさがすことはできません。

　NT&95 版 のみ使用できます。

例

dim f$

f$ = searchexe$("netscape.exe")

if f$<>"" then

        call shell(f$, 1)

end if

参照    searchfile$

[目次]


searchfile$
searchfile$ 関数

構文    searchfile$(string)

        string:さがしたいファイル名

機能

　string を

1. ＱＸのあるディレクトリ

2. カレントディレクトリ

3. システムディレクトリ

4. Windows ディレクトリ

5. 環境変数 path で指定されたディレクトリ

の中から順番に探し、みつかればその(ドライブ/ディレクトリ名のついた)ファイル名を、見つからなければヌルストリングを返します。

　string に \ または : が含まれていたときは、string をそのまま返します。

参照    fullpath$  dir$  searchexe$

[目次]


seek
seek ステートメント

構文    seek #num1, num2

機能

　ファイル番号num1 のファイルの読み込み位置または書き込み位置を num2 に移動します。

　先頭の位置は 1 です。

seek 関数

構文    seek(num)

機能

　ファイル番号num のファイルの読み込み位置または書き込み位置を返します。

参照    open

[目次]


sendkey
sendkey ステートメント

構文    sendkey XXX, ...

機能

　指定した引数をキー入力したかのように、アクティブウィンドウに送ります。

　引数には、数値/文字列の両方を指定できます。

　引数が文字列の時はその文字列が、数値の時はそれに対応するキーコードが送られます。

　sendkey を実行した後、すぐにキーを送出したいときは doevents を実行してください。

　MENU, CTRL, SHIFT 以外の一般キーを記述すると、そのキーを「押して離した」という情報を送ります。シフトキーを記述するとまず、「押した」という情報のみを送り、SendKey の最後で「離した」という情報を送ります。

例 MENU f の後、o を押したことにする

'MENU を押す → f を押す → f を離す → MENU を離す

SendKey KEY_MENU, "f"

'o を押す → o を離す

SendKey "o"

注意

SendKey KEY_MENU, "fo"

とすると、

MENU を押す → f を押す → f を離す → o を押す → o を離す → MENU を離す

となります。つまり、MENU f の後、 MENU o と押したことになります。

参照    予約定数(KEY)

[目次]


shell
shell 関数

構文    shell(string, num)

        string:コマンド文字列

        num:ウィンドウのスタイル(省略可能:2)

機能

　string で指定したコマンド文字列を実行します。num により、実行するときのウィンドウのスタイルが決定されます。コマンド文字列にディレクトリ名が含まれていないときは searchfile$ と同様にコマンドのある場所を検索して実行します。

　コマンドの終了を待たずにマクロは続行されます。

　コマンド実行中にマクロの実行を止めたいときは num に負の数を指定します。このとき、ダイアログが表示されるので、ボタンを押せば強制的にマクロを実行させることができます。

num

1,-1    通常のウィンドウ（フォーカスあり）

2,-2    アイコン化ウィンドウ（フォーカスあり）

3,-3    最大化ウィンドウ（フォーカスあり）

4,-4    通常のウィンドウ（フォーカスなし）

6,-6    アイコン化ウィンドウ（フォーカスなし）

返値

Win3.1 版

　コマンドを実行できなかったときは 32 以下の数値を返します。

　コマンドを実行できたときは 32 より大きい数値を返します。

NT&95 版

　コマンドを実行できなかったときは０を返します。

　コマンドを実行できたときは ０以外の数値を返します。

例　メモ帳を実行し、終了するまでマクロの実行を停止する

call shell("notepad", -1)

例　メモ帳を実行し、マクロの実行も継続する

call shell("notepad", 1)

例　バッチファイルを実行する

拡張子が exe 以外の時は必ず拡張子も記述してください。

call shell("xxx.bat", 1)

[目次]


space$
space$ 関数

構文    space$(num)

機能

　num 個のスペースからなる文字列を返します。

参照    string$

例

space$(2) → "  "

[目次]


static
static ステートメント

構文    static 変数名 as 型 [, 変数名2 as 型2 , ...]

機能

　dim とほぼ同様の機能のステートメントですが、「プロシージャや関数の内部のローカル変数はマクロの実行時に１回だけしか初期化されない」という点が違います。

　dim で宣言した変数はプロシージャや関数に入るたびに初期化されます。

参照    変数  const

[目次]


stopdestroykey
stopdestroykey ステートメント

構文    stopdestroykey num

機能

　numが 0 のときマクロ終了時にキー入力を捨てます。

　numが 0 以外のときマクロ終了時にキー入力を捨てません。

　マクロ実行直後は stopdestroykey 0 の状態になっています。

　キー入力を必要とするマクロを実行し、キーを押しすぎると、マクロ終了時に文書に文字が入力されてしまうことがあります。これを防ぐために、マクロ終了時にはキー入力は自動的に捨てられるようになっています。この動作を禁止したいときは、

stopdestroykey 1

を実行してください。

[目次]


stopdispatchevent
stopdispatchevent ステートメント

構文    stopdispatchevent num

機能

　numが 0 のときイベントの処理を行います。

　numが 0 以外のときイベントの処理を行わなくなります。

　マクロ実行直後は stopdispatchevent 0 の状態になっています。

　マクロ実行中は定期的にＱＸ内で発生したイベントを処理します。このとき、キー入力は捨てられてしまいます。

　anykeypressed を使用するときは stopdispatchevent 1 を実行して、キー入力が捨てられないようにしてください。

　stopdispatchevent 1 を実行すると、右クリックによるマクロの中止はできません。

例

dim key

stopdispatchevent 1

do

        key = anykeypressed()

        if key = KEY_SPACE then end

        if key = KEY_RETURN then beep

        'ここで何かする

loop while 1

stopdispatchevent 0     'anykeypressed を使わないときは 0 にする

[目次]


stopmacro
stopmacro ステートメント

構文    stopmacro num

機能

　一般マクロの実行中にキー入力するか、アプリケーションウィンドウを右クリックするとマクロの実行を中止できますが、この動作を有効にするか無効にするかを設定できます。

　numが 0 のときマクロを中止できなくなります。

　numが 0 以外のときマクロを中止できるようになります。

　マクロ実行直後は stopmacro 1 の状態になっています。

　デバッグがすんで、間違いなく動作するマクロ以外では stopmacro 0 は実行しない方が安全です。

参照    マクロの中止

[目次]


str$
str$ 関数

構文    str$(num)

機能

　num を表現する文字列を作成し、その文字列を返します。

　num が正の数の時は文字列の先頭にスペースがつきます。

参照    val  chr$  hex$  cformat$

例

str$(10)  → " 10"

str$(-10) → "-10"

[目次]


string$
string$ 関数

構文    string$(num1, num2)

        num1:個数

        num2:文字のコード

機能

　num2 をアスキーコードまたはシフトＪＩＳコードとみなして、num1 個並べた文字列を作成し、その文字列を返します。

参照    space$

例

string$(3, `a`) → "aaa"

string$(3, `あ`) → "あああ"

[目次]


sub
sub ステートメント

proc ステートメント

構文    sub プロシージャ名(引数のならび, ... )

                ステートメント...

        end sub

機能

　プロシージャを定義します。

　値を返せないことを除き function と同じです。

　プロシージャを再帰的に（自分自身を）呼び出すことはできません。

　sub と proc はマクロを実行する上では全く同じ機能です。sub と記述できるところは、すべて proc と記述できます。

　ＱＸのマクロ一覧(MacroList)で一覧表示されるのは proc のみです。

　直接実行可能なプロシージャは proc、単なるサブルーチンとしてのプロシージャは sub と記述するようにしてください。

例

'inputstring は 引数を < > で囲って文書に入力するプロシージャ

proc inputstring(s$)

        @Input "<" + s$ + ">"

end proc

proc main

        inputstring "テスト"

end proc

exit sub ステートメント

exit proc ステートメント

構文    exit sub

構文    exit proc

機能

　ただちに sub,proc を抜けます。

[目次]


time$
time$,time0$ 関数

構文    time$

機能

　現在の時間（"hh:mm:ss" の形式）を返します。

　時/分/秒が１桁のときはスペースで埋められます。

例

23: 0:30

構文    time0$

機能

　現在の時間（"hh:mm:ss" の形式）を返します。

　時/分/秒が１桁のときは 0 で埋められます。

例

23:00:30

参照    date$  month$  week$  weekday

[目次]


type
type ステートメント

構文    type 型名

                メンバ名1 as 型1

                メンバ名2 as 型2

                ...

        end type

機能

　ユーザ定義データ型を宣言します。

　ユーザ定義型変数を配列にすることはできません。

　メンバ名の型に可変長文字列型/ユーザ定義データ型を指定することはできません。

　メンバの参照には . を使います。

例

'アプリケーションウィンドウの座標をステータスバーに表示します。

type RECT

        Left as default

        Top as default

        Right as default

        Bottom as default

end type

dllname USER

cdeclare void GetWindowRect(HWND, RECT *);

proc main()

        dim rc as RECT

        GetWindowRect(@@hwnd, rc)

        print cformat$("left=%d, top=%d, right=%d, bottom=%d", rc.Left, rc.Top, rc.Right, rc.Bottom)

end proc

[目次]


ucase
ucase 関数

構文    ucase(num)

機能

　数値num をアスキーコードとみなして、半角英小文字であれば大文字に変換し、その値を返します。

　半角英小文字以外の時は、num をそのまま返します。

　全角の英小文字は変換しません。

ucase$ 関数

構文    ucase$(string)

機能

　string 中の半角英小文字を大文字に変換し、その文字列を返します。

　全角の英小文字は変換しません。

参照    lcase  lcase$

例

ucase(`a`) → &H41 つまり `A`

ucase(`A`) → &H41 つまり `A`

ucase$("ABcd") → "ABCD"

[目次]


val
val 関数

構文    val(string)

機能

　文字列で表現された値を数値に変換し、その数値を返します。

参照    asc  chr$

例

val("10") → 10

val("&H10") → 16

[目次]


versionmacro
versionmacro 関数

構文    versionmacro

返値

　マクロのバージョン番号に 100 をかけた数値を返します。

例

バージョン番号が 2.00 のときは 200

バージョン番号が 2.11 のときは 211

[目次]


week$
week$ 関数

構文    week$(num)

        num:

                1  "Sunday" を返します

                2  "Monday"

                3  "Tuesday"

                4  "Wednesday"

                5  "Thursday"

                6  "Friday"

                7  "Saturday"

                0  今日の曜日を英語で返します(Sunday ～ Saturday)

                -1 "日"

                -2 "月"

                -3 "火"

                -4 "水"

                -5 "木"

                -6 "金"

                -7 "土"

機能

　指定した数値を曜日文字列に変換し、その文字列を返します。

参照    date$  time$  month$  weekday

例

week$(1) → "Sunday"

week$(-1) → "日"

week$(0) → "Saturday"          (実行した日が土曜日のとき)

[目次]


weekday
weekday 関数

構文    weekday

機能

　今日の曜日を１～７の数値で返します

日      1 を返します

月      2

火      3

水      4

木      5

金      6

土      7

参照    date$  time$  month$  week$

例

weekday → 1            (実行した日が日曜日のとき)

[目次]


演算子

■ 算術演算子 ■

+  & 演算子

構文1   num1 + num2

構文2   string1 + string2

構文3   string1 & string2

機能1

　num1 と num2 の和を求めます。

機能2,3

　string1 と string2 を連結します。

- 演算子

構文1   num1 - num2

構文2   - num

機能1

　num1 と num2 の差を求めます。

機能2

　num の符号を反転します。

* 演算子

構文    num1 * num2

機能

　num1 と num2 の積を求めます。

/ 演算子

構文    num1 / num2

機能

　num1 と num2 の商を求めます。

　整数で演算するため小数点以下は切り捨てられます。

mod 演算子

構文    num1 mod num2

機能    num1 を num2 で除算し、その余りを返します。

<< 演算子

構文    num1 << num2

機能

　num1 を左に num2 ビットシフトします。num1 は符号なし整数として扱われます。

>> 演算子

構文    num1 >> num2

機能

　num1 を右に num2 ビットシフトします。num1 は符号なし整数として扱われます。

■ 論理演算子 ■

and 演算子

構文    num1 and num2

機能    num1 と num2 の論理積を求めます。

ビット単位での and の結果の一覧は以下の通りです。

num1   num2   結果

0       0       0

0       1       0

1       0       0

1       1       1

eqv 演算子

構文    num1 eqv num2

機能    num1 と num2 の論理等価を求めます。

num1   num2   結果

0       0       1

0       1       0

1       0       0

1       1       1

imp 演算子

構文    num1 imp num2

機能    num1 と num2 の論理包含を求めます。

num1   num2   結果

0       0       1

0       1       1

1       0       0

1       1       1

not 演算子

構文    not num1

機能    num1 の論理否定を求めます。

num1    結果

0       1

1       0

or 演算子

| 演算子

構文    num1 or num2

構文    num1 | num2

機能    num1 と num2 の論理和を求めます。

num1   num2   結果

0       0       0

0       1       1

1       0       1

1       1       1

xor 演算子

構文    num1 xor num2

機能    num1 と num2 の排他的論理和を求めます。

num1   num2   結果

0       0       0

0       1       1

1       0       1

1       1       0

■ 関係演算子 ■

< 演算子

構文1   num1 < num2

構文2   string1 < string2

機能1

　num1 ＜ num2 のとき -1、num1 ≧ num2 の時０を返します。

機能2

　文字列を先頭から１バイトずつ比較し、string1 ＜ string2 のとき -1、string1 ≧ string2 の時０を返します。

> 演算子

構文1   num1 > num2

構文2   string1 > string2

機能1

　num1 ＞ num2 のとき -1、num1 ≦ num2 の時０を返します。

機能2

　文字列を先頭から１バイトずつ比較し、string1 ＞ string2 のとき -1、string1 ≦ string2 の時０を返します。

= 演算子

構文1   num1 = num2

構文2   string1 = string2

機能1

　num1 = num2 のとき -1、num1 <> num2 の時０を返します。

機能2

　string1 と string2 が同じ時 -1、違う時０を返します。

<=  =< 演算子

構文1   num1 <= num2

構文2   string1 <= string2

機能1

　num1 ≦ num2 のとき -1、num1 ＞ num2 の時０を返します。

機能2

　文字列を先頭から１バイトずつ比較し、string1 ≦ string2 のとき -1、string1 > string2 の時０を返します。

<= と =< は同じ機能です。

>=  => 演算子

構文1   num1 >= num2

構文2   string1 >= string2

機能1

　num1 ≧ num2 のとき -1、num1 ＜ num2 の時０を返します。

機能2

　文字列を先頭から１バイトずつ比較し、string1 ≧ string2 のとき -1、string1 ＜ string2 の時０を返します。

>= と => は同じ機能です。

<>  >< 演算子

構文1   num1 <> num2

構文2   string1 <> string2

機能1

　num1 <> num2 のとき -1、num1 = num2 の時０を返します。

機能2

　string1 と string2 が違うとき -1、同じ時０を返します。

<> と >< は同じ機能です。

++ -- 演算子

構文1   変数++

構文2   変数--

機能1

　変数の値に１を足します。

　変数は integer型 及び long型 の数値変数のみ使用できます。配列型には使用できません。

item$[j++] = "xxx"

は以下の２行と同じです

item$[j] = "xxx"

j = j+1

機能2

　変数の値から１を引きます。

例

dim j

dim item$[10]

j = 1

item$[j++] = "xxx"

item$[j++] = "yyy"

[目次]


演算子の優先順位

上にあるほど優先順位が高くなります。

同じ行にあるものは同じ優先順位です。

++ --

-(単項の - )

<<  >>

*  /

mod

+  -  &

=  <  >  <=  =<  >=  =>  <>  ><

not

and

or  |

xor

imp

eqv

[目次]


'
コメント

　行中のどの位置でも ' を記述すると、それ以降の文字をコメントとみなします。

　ただし、文字列中の ' はコメントとはなりません。

例

'これはコメント

for j = 1 to 100   'ここからループ

[目次]


#16
条件実行

　行頭に #16 または #32 を記述するとその行を Win3.1 版 のときのみまたは NT&95 版 のときのみ実行することができます。

#16      Win3.1 版 の時のみ実行する

#32      NT&95 版 の時のみ実行する

#32_NT   NT&95 版 を Windows NT で実行した時のみ実行する

#32_95   NT&95 版 を Windows 95 で実行した時のみ実行する

例1

#16     dllname "x16.dll"

#32     dllname "x32.dll"

[目次]


用途別ステートメント・関数
■ 算術演算

abs

■ 数値を文字列へ

chr$  cformat$  hex$  str$

■ 文字列の作成

space$  string$

■ 文字列を数値へ

asc  val

■ 文字列の検索

instr  instrb

inrstr  inrstrb

■ 大文字小文字変換

lcase  lcase$

ucase  ucase$

■ 文字のチェック

isalpha  islower  isupper

isalnum  isdigit  isxdigit

■ 文字列の切り出し

left$  leftb$

mid$  midb$

right$  rightb$

■ 文字列の長さ

len  lenb

■ スペース削除

ltrim$  rtrim$  trim$

■ ＪＩＳ←→シフトＪＩＳ

jistosjis  sjistojis

■ ディレクトリ/ファイル

chdir  mkdir  rmdir

chdrive  curdir$

dir$  getattr

filedatetime$  filelen

fullpath$

getfilename$

open close name kill

lineinput inputb$ print

freefile eof seek

searchfile$

searchexe$

■ 日付/時間

date$  date0$

time$  time0$

month$  week$  weekday

■ ＩＭＥ

imemode  imestatus

■ 入力/選択

inputbox  inputbox$  stopinputbox

listbox  msgbox  popupmenu

■ ダイアログ

dialog control

dlgitemcmd  dlglistboxarray  dlgtext$  dlgvalue

dlgenable  dlgvisible  dlghwnd  dlgnotify

■ キー入力

inputkey  inputchar

iskeypressed  anykeypressed  iskeydown

■ プロファイル

writeprofile  getprofile$

■ ＤＤＥ通信(NT&95 版 のみ使用できます)

ddeinitiate  ddeexecute  ddepoke

dderequest$  ddeterminate

■ 他のアプリに関する

appactivate  appactivate2

sendkey

shell

doevents

■ ＤＬＬ

cdeclare  dllname

cdeclarea

■ その他

beep

call

dprint

environ$

versionmacro

print

stopmacro

stopdispatchevent

stopdestroykey

■ 変数/定数の定義

dim  static  const

type

■ プロシージャ/関数の定義

sub  proc  function

■ 制御

for .. next

do .. loop while(until)

if .. then .. else .. elseif .. end if

end   exit


プロパティ・メソッド 索引
Ａ  Ｂ  Ｃ  Ｄ  Ｅ  Ｆ  Ｇ  Ｈ  Ｉ  Ｊ  Ｋ  Ｌ  Ｍ  Ｎ  Ｏ  Ｐ  Ｑ  Ｒ  Ｓ  Ｔ  Ｕ  Ｖ  Ｗ  Ｘ  Ｚ  用途別

[Ａ]

@@ActiveFile メソッド

@@ActiveFrame メソッド

@@Activehwnd メソッド

@@Activehwnd2 メソッド

@Append メソッド

@@AutoBackup プロパティ

@@AutoBackupCount プロパティ

@@AutoBackupDelClose プロパティ

@@AutoBackupDelSave プロパティ

@@AutoBackupMin プロパティ

@@AutoBackupSec プロパティ

@AutoIndent プロパティ

[Ｂ]

@@BackupDir$ プロパティ

@@BackupN プロパティ

@@BlockCopyReset プロパティ

@BytePos プロパティ

@BytePosCr プロパティ

[Ｃ]

@CanEdit プロパティ

@CanEditSel プロパティ

@Caption$ プロパティ

@CaptionIgnoreSp プロパティ

@Change メソッド

@CharPitch プロパティ

@CnvTabSpace プロパティ

@Code プロパティ

@CrLineToScrLine メソッド

@@CursorTypeDOS プロパティ

@@CursorUnderLine プロパティ

[Ｄ]

@@Delete0ByteFile プロパティ

@DeleteLastSpace プロパティ

@DeleteLastTab プロパティ

@DeleteLastZSpace プロパティ

@@DialogCancel プロパティ

@@DictionaryEnglish プロパティ

@@DictionaryFilename$ プロパティ

@@DictionaryIdiom プロパティ

@DictionaryUse プロパティ

@DictionaryUseAll プロパティ

@@DisableToolBarCheck プロパティ

@@DragMove プロパティ

@@DragRightButton プロパティ

@@DragSelect プロパティ

[Ｅ]

@@EditCount プロパティ

@@EditCount2 プロパティ

@@Err プロパティ

@EUC プロパティ

@@EUCDrive$ プロパティ

[Ｆ]

@FileByte プロパティ

@@FileManIconic プロパティ

@FilePrintOK メソッド

@@FileOpenDir メソッド

@Filename$ プロパティ

@FillZenSp プロパティ

@@FindAddString メソッド

@@FindCaseSensitive プロパティ

@@FindFromTop プロパティ

@@FindGoBack プロパティ

@@FindIncremental プロパティ

@@FindSame1 プロパティ

@@FindStopMark プロパティ

@FindStringBottom メソッド

@FindStringTop メソッド

@@FindWindowVar メソッド

@@FindWord プロパティ

@FontName$ プロパティ

@FontNameSize メソッド

@FontProportional プロパティ

@FontSize プロパティ

@@FormatFilename$ プロパティ

@FreeCursor プロパティ

@@FreeReadSize プロパティ

[Ｇ]

@GetCursorWord$ プロパティ

@@GetHwnd メソッド

@@Global$ プロパティ

[Ｈ]

@HelpFileName$ プロパティ

@@HelpFileName$ プロパティ

@@HighScroll プロパティ

@@HighScrollTime プロパティ

@hwnd プロパティ

@@hwnd プロパティ

[Ｉ]

@ImeNextOpen プロパティ

@@ImeOffFileDialog プロパティ

@@ImeOffQXEnd プロパティ

@@ImeString$ プロパティ

@@IncludeDir$ プロパティ

@@InitOpenFile$ プロパティ

@Input メソッド

@Insert メソッド

@InterLine プロパティ

[Ｊ]

@JumpLineCr プロパティ

@@JumpLineNotMove プロパティ

@@JumpMacro メソッド

@@JumpScrollLine プロパティ

[Ｋ]

@@Key プロパティ

@@KeyFilename$ プロパティ

@KeyTouch プロパティ

@@KeywordFile$ プロパティ

@KeywordNum プロパティ

@@KeywordReset メソッド

@KinsokuBottom プロパティ

@KinsokuBottomCount プロパティ

@KinsokuReturn プロパティ

@KinsokuTop プロパティ

@KinsokuTopCount プロパティ

[Ｌ]

@LastLine プロパティ

@Line プロパティ

@LineCount プロパティ

@@ListAutoClose プロパティ

@@ListResetCache メソッド

@@ListTree プロパティ

@@ListUserString$ プロパティ

@@LoadLastFile プロパティ

[Ｍ]

@@MacroDirectory$ プロパティ

@@MaxFrameHideTitle プロパティ

@@MDIScrollBar プロパティ

@@ModeAllSave プロパティ

@Modify プロパティ

@ModifyLineCr プロパティ

@@ModifyResetSave プロパティ

@@MouseIBEAM プロパティ

@MoveNextLineCr メソッド

@MovePrevLineCr メソッド

[Ｎ]

@NoLoadNoCnv プロパティ

[Ｏ]

@@OpenCurrent プロパティ

@@OpenDialogEx プロパティ

@@OpenFile メソッド

@@OpenFileCode プロパティ

@@OpenHeight プロパティ

@@OpenReadonly プロパティ

@@OpenReadSize プロパティ

@@OpenWidth プロパティ

@OverWrite メソッド

@OverWriteMode プロパティ

[Ｐ]

@PageLine プロパティ

@Pathname$ プロパティ

@PrintCaption プロパティ

@PrintComment プロパティ

@PrintEOF プロパティ

@PrintFold プロパティ

@PrintHScroll プロパティ

@PrintKeyword プロパティ

@@PrintLineOnSBar プロパティ

@PrintModify プロパティ

@PrintNumber プロパティ

@PrintPage プロパティ

@PrintReturn プロパティ

@PrintRuler プロパティ

@PrintScreenLine プロパティ

@@PrintStatusBar プロパティ

@PrintStatusLine プロパティ

@PrintString プロパティ

@PrintTab プロパティ

@@PrintToolBar プロパティ

@PrintUnderEOF プロパティ

@PrintVScroll プロパティ

@PrintWidthRule プロパティ

@PrintZenSpace プロパティ

@@ProfileFilename$ プロパティ

[Ｑ]

@QChangeSave プロパティ

@@QOpenBinary プロパティ

@@QOpenNew プロパティ

@@QxDirectory$ プロパティ

[Ｒ]

@ReadOnly プロパティ

@Redraw プロパティ

@@Redraw プロパティ

@@RegistryLoadNum プロパティ

@@ResidentQX プロパティ

@RegisterAutoClosed メソッド

@RegisterAutoSaved メソッド

@@RegistrySaveNum プロパティ

@@ReplaceCount プロパティ

@ReplaceString2 メソッド

@@RestoreChild プロパティ

@@RestoreCursorPos プロパティ

@@RestoreFrame プロパティ

@@RuleProtect プロパティ

@@RuleType プロパティ

[Ｓ]

@SaveAs メソッド

@ScreenHeight プロパティ

@ScreenWidth プロパティ

@ScrLineToCrLine メソッド

@@ScrollMargin プロパティ

@@ScrollMargin2 プロパティ

@@SearchFound プロパティ

@Select プロパティ

@SelectEndBytePosCr プロパティ

@SelectEndLine プロパティ

@SelectStartBytePosCr プロパティ

@SelectStartLine プロパティ

@@Share プロパティ

@@Shift プロパティ

@@ShiftMoveSelect プロパティ

@@ShortFileName$ プロパティ

@@StatusPosNormal プロパティ

@@StopSearchBad プロパティ

@@StatusKanjiCode プロパティ

@@StringDragDrop プロパティ

@@StyleComment$ プロパティ

@@StyleName$ プロパティ

@StyleNo プロパティ

@@SwapDir$ プロパティ

[Ｔ]

@Tab プロパティ

@@TagDir$ プロパティ

@@TagFilename$ プロパティ

@Text$ プロパティ

@TextByte プロパティ

@TextCr$ プロパティ

@TextMode プロパティ

@TextSelect$ プロパティ

@@TitleFullPath プロパティ

@@ToolBar1Line プロパティ

@@ToolListAutoUpdate プロパティ

@@ToolListMiscDoc プロパティ

@@ToolListPos プロパティ

@@ToolListType プロパティ

@TopLine プロパティ

@@TopMostIcon プロパティ

@@TrackPopupNoLeft プロパティ

[Ｕ]

@@UpDownSelectLine プロパティ

@@UserHelpFileName$ プロパティ

[Ｖ]

@@Version プロパティ

@@VKey プロパティ

[Ｗ]

@@WallPaper$ プロパティ

@@WheelScroll プロパティ

@Width プロパティ

@@WindowVar プロパティ

@WindowVar プロパティ

@Wordwrap プロパティ

@@WorkBuffer プロパティ

[Ｘ]

@XDisplay プロパティ

@XLeft プロパティ

[Ｚ]

@@ZenHanMode プロパティ

@@ZoomChild プロパティ

[用途別]

共通設定 - 表示 プロパティ

共通設定 - ツールバー プロパティ

共通設定 - 編集 プロパティ

共通設定 - マウス プロパティ

共通設定 - 開く プロパティ

共通設定 - バックアップ プロパティ

共通設定 - ヘルプ プロパティ

共通設定 - 開発 プロパティ

共通設定 - 短縮入力 プロパティ

共通設定 - 辞書 プロパティ

共通設定 - IME/ｱｲｺﾝ プロパティ

共通設定 - マクロ プロパティ

共通設定 - 次回起動時 プロパティ

共通設定 - システム プロパティ

共通設定 - 設定保存情報 プロパティ

書式設定 - 表示 プロパティ

書式設定 - 編集 プロパティ

書式設定 - テキスト プロパティ

書式設定 - ヘルプ プロパティ

書式設定 - 保存変換 プロパティ

書式設定 - ＩＭＥ プロパティ

書式設定 - 見出し プロパティ

書式設定 - 禁則処理 プロパティ

書式設定 - 辞書 プロパティ

書式設定 - 設定の保存 プロパティ

検索関連メソッド・プロパティ

行番号関連メソッド・プロパティ

開く関連メソッド・プロパティ

保存関連メソッド

テキスト編集関連メソッド

ｘ座標関連プロパティ

文書の内容関連プロパティ

編集状態関連プロパティ

ウィンドウハンドル関連メソッド・プロパティ

ユーザ変数関連プロパティ

キーボード関連プロパティ

その他のプロパティ


検索関連メソッド・プロパティ

@FindStringBottom メソッド

        指定文字列を下方向へ検索する

書式

@FindStringBottom string

        string:検索文字列

@FindStringTop メソッド

        指定文字列を上方向へ検索する

書式

@FindStringTop string

        string:検索文字列

@ReplaceString2 メソッド

        指定した文字列で置換する

書式

@ReplaceString2 string1, string2, num

        string1:検索文字列

        string2:置換文字列

        num:キー入力あり/なし（省略可能:0）

                num に 1 を指定すると、確認なしで全置換します。

@@SearchFound プロパティ

取得

        -1      最後の検索において検索文字列が見つかった

        ０      見つからなかった

@@StopSearchBad プロパティ

取得

        -1      検索に失敗したらマクロを終了する

        ０      検索に失敗してもマクロを続行する

設定

        ０以外  検索に失敗したらマクロを終了する

        ０      検索に失敗してもマクロを続行する

@@FindCaseSensitive プロパティ

取得

        -1      検索時に大文字小文字を区別する

        ０      検索時に大文字小文字を区別しない

設定

        ０以外  検索時に大文字小文字を区別することにする

        ０      検索時に大文字小文字を区別しないことにする

@@FindWord プロパティ

取得

        -1      単語単位で検索

        ０      文字単位で検索

設定

        ０以外  単語単位で検索することにする

        ０      文字単位で検索することにする

@@FindFromTop プロパティ

取得

        -1      文書先頭から検索する

        ０      カーソル位置から検索する

設定

        ０以外  文書先頭から検索することにする

        ０      カーソル位置から検索することにする

@@FindGoBack プロパティ

取得

        -1      置換終了後、カーソルは元の行に戻る

        ０      置換終了後、カーソルは最後に置換した位置にとどまる

設定

        ０以外  置換終了後、カーソルは元の行に戻ることにする

        ０      置換終了後、カーソルは最後に置換した位置にとどまることにする

@@FindStopMark プロパティ

取得

        -1      マーク行で検索を停止する

        ０      マーク行で検索を停止しない

設定

        ０以外  マーク行で検索を停止させる

        ０      マーク行で検索を停止させない

@@FindSame1 プロパティ

取得

        -1      同一視検索を行う

        ０      同一視検索を行わない

設定

        ０以外  同一視検索を行う

        ０      同一視検索を行わない

@@FindIncremental プロパティ

取得

        -1      逐次検索を行う

        ０      逐次検索を行わない

設定

        ０以外  逐次検索を行う

        ０      逐次検索を行わない

@@ReplaceCount プロパティ

取得

        置換した数

以下のメソッドを実行した後に設定されます。

@SearchRepeat           最後に行った文字列検索・置換の繰り返し

@ReplaceRepeat          置換の再実行

@ReplaceString          文字列の置換

@@FindAddString メソッド

        指定した文字列を検索バッファに入れます。

        検索繰り返しを行うときにこの文字列が参照されます。

書式

@FindAddString string

        string:検索バッファに入れる文字列

参照    @SearchRepeatDown       ↓方向への文字列検索繰り返し

        @SearchRepeatUp         ↑方向への文字列検索繰り返し

        @SearchString           文字列の検索

        @SearchWordDown         カーソル上の単語を↓方向へ検索

        @SearchWordUp           カーソル上の単語を↑方向へ検索

[目次]


行番号関連メソッド・プロパティ

@TopLine プロパティ

取得&設定

        画面上の最上行の表示行番号（１～

@LastLine プロパティ

取得

        文書の最終行の表示行番号

        最後まで読み込んでいないときは注意

@Line プロパティ

取得&設定

        カーソルのある表示行番号（１～

@JumpLineCr プロパティ

取得

        ジャンプ前の行を取得する（改行番号）

書式

        @JumpLineCr(num)

        num:インデックス（１～５）

@ModifyLineCr プロパティ

取得

        最後に修正した行の改行番号（１～

@SelectStartLine プロパティ

取得

        選択開始行番号（表示行番号）（１～

        選択していないときは０

@SelectEndLine プロパティ

取得

        選択終了行番号（表示行番号）（１～

        選択していないときは０

@CrLineToScrLine メソッド

取得

        改行番号を表示行番号に変換します（１～

        変換できなかったときは０

書式

        @CrLineToScrLine(num)

        num:改行番号

@ScrLineToCrLine メソッド

取得

        表示行番号を改行番号に変換します（１～

        変換できなかったときは０

書式

        @ScrLineToCrLine(num)

        num:表示行番号

@MoveNextLineCr メソッド

　カーソルを改行単位での次の行の行頭に移動します。

@MovePrevLineCr メソッド

　カーソルを改行単位での前の行の行頭に移動します。

[目次]


保存関連メソッド

@Append メソッド

        指定したファイルにカレント文書を追加書き込みします。

        選択中は選択している範囲のみを追加書き込みします。

書式

@Append(string)

        string:追加書き込みするファイル名

返値

        追加書き込みに成功したときは -1

        失敗したときは０

参照    @FileAppend     編集中の文書をディスク上のファイルへ追加書き込み

@SaveAs メソッド

        指定した名前で保存する

書式

@SaveAs(string)

        string:保存したいファイル名

返値

        -1      保存できた

        ０      保存できなかった

参照    @FileSaveAs     別のファイル名で文書を保存

[目次]


開く関連メソッド・プロパティ

@@OpenFile メソッド

        指定したファイルを新たに開く

書式

@@OpenFile(string)

        string:開きたいファイル名

返値

        ファイルを開けたときは ウィンドウハンドル(HWND)

        開けなかったときは０

参照    @FileOpen       新たにファイルを開く

@@OpenFileCode プロパティ

        @@OpenFile で開くファイルの漢字コードを指定する

取得&設定

        0       自動判定する

        1       シフトJIS

        2       EUC

@@FileOpenDir メソッド

        指定したディレクトリ、ファイルタイプで「開くダイアログ」を表示する

書式

@@FileOpenDir string1, string2

        string1:ディレクトリ

        string2:ファイルタイプ（省略可能:"*.*"）

　string1 にヌルストリングを指定すると、カレントディレクトリまたは開くダイアログで最後に表示したディレクトリとなります。（@@OpenCurrent の値による）

@@OpenReadonly プロパティ

        次回表示する「開くダイアログ」の「読み取り専用」の状態

設定

        0       -R オプションが指定されていれば、チェックし、

                -R オプションが指定されていなければ、チェックしない

        1       読み取り専用をチェックする

        2       読み取り専用をチェックしない

[目次]


テキスト編集関連メソッド

参照    テキストのコード内容について

以下のメソッドで string に改行コード(&H0A)を含めることはできません。改行コードを入力するときは @CharReturn2 を使用してください。

@Change メソッド

        カレント文書の内容を変更します。

書式

@Change num1, num2, num3, string

        num1:表示行番号（１～）

        num2:行頭からの位置（０～）

        num3:置き換えるバイト数（０～）

        string:置き換える文字列

　num1 は表示行番号ですが、num2 は画面の左端からの位置ではなく、行頭からの位置です。

　このメソッドは画面をすぐに再表示しません。

@Input メソッド

        カーソル位置に指定した文字列を入力する

        挿入モード／上書きモードの状態に応じて入力されます。

書式

@Input string

        string:カーソル位置に入力する文字列

@Insert メソッド

        カーソル位置に指定した文字列を挿入する

書式

@Insert string, num

        string:カーソル位置に挿入する文字列

        num:０のときカーソルは移動しない

            １のとき入力した文字数分だけカーソルが移動する

            (省略可能:1)

@OverWrite メソッド

        カーソル位置に指定した文字列を上書きする

書式

@OverWrite string, num

        string:カーソル位置に上書きする文字列

        num:０のときカーソルは移動しない

            １のとき入力した文字数分だけカーソルが移動する

            (省略可能:1)

[目次]


ｘ座標関連プロパティ

@BytePos プロパティ

取得&設定

        カーソルのあるバイト位置（１～

        画面の左端からのバイト位置です。

@BytePosCr プロパティ

取得&設定

        カーソルのあるバイト位置（１～

        行頭からのバイト位置です。

@XDisplay プロパティ

取得&設定

        カーソルのある画面上の桁位置（１～

@XLeft プロパティ

取得&設定

        ウィンドウの左端の桁位置（１～

        横スクロールしている時に１より大きくなります。

        必ず８の倍数＋１となります。

@SelectEndBytePosCr プロパティ

取得

        選択開始位置のバイト位置（１～

        行頭からのバイト位置です。

@SelectStartBytePosCr プロパティ

取得

        選択終了位置のバイト位置（１～

        行頭からのバイト位置です。

[目次]


文書の内容関連プロパティ

@Code プロパティ

取得

        カーソル位置のテキストのコード(必ずシフトJISコードになります)

        改行のときは CODE_RETURN(-224) となります。

        文書末のときは CODE_EOF(-223) となります。

参照    予約定数(CODE)

@FileByte プロパティ

取得

        文書のファイル上のバイト数

@Filename$ プロパティ

取得

        ファイル名（ディレクトリはつかない）

@GetCursorWord$ プロパティ

取得

        カーソル上の単語を取得する

        127文字まで

@Pathname$ プロパティ

取得

        ファイル名（ディレクトリ付き）

@LineCount プロパティ

取得

        指定した表示行番号の行が画面上で何行あるかを返す（１～

書式

        @LineCount(num)

        num:表示行番号

@Text$ プロパティ

取得

        指定した表示行番号のテキスト内容

        表示上の１行のみ

書式

        @Text$(num)

                num:表示行番号（１～

参照    テキストのコード内容について

@TextCr$ プロパティ

取得

        指定した表示行番号のテキスト内容

        指定した表示行番号を含む改行単位の１行

書式

        @TextCr$(num)

                num:表示行番号（１～

@TextSelect$ プロパティ

取得

        選択しているテキスト内容

        マウスで選択し、１行内で256バイト以内を選択しているときのみ有効です。

        その他の時はヌルストリングを返します。

@TextByte プロパティ

取得

        文書のバイト数

[目次]


テキストのコード内容について

　コード &H80, &HFD, &HFE, &HFF がテキストに含まれるときは、それぞれ &HFF+&H80, &HFF+&HFD, &HFF+&HFE, &HFF+&HFF のように&HFF+XX の２バイトの組になって格納されます。

　また、シフトＪＩＳコードの１バイト目が単独で現れるときも &HFF+&H81 のように格納されます。

参照    @Change  @Input  @Insert  @OverWrite  @Text$  @TextCr$


編集状態関連プロパティ

@CanEdit プロパティ

取得

        -1      文書は編集可能

        ０      文書は編集不可能

　@ReadOnly<>0 または @Select<>0 または、カットバッファなどの編集できない文書の時に０となります。

@CanEditSel プロパティ

取得

        -1      文書は編集可能

        ０      文書は編集不可能

　@ReadOnly<>0 または カットバッファなどの編集できない文書の時に０となります。

@EUC プロパティ

取得

        -1      ＥＵＣファイル

        ０      シフトＪＩＳファイル

設定

        ０以外  ＥＵＣファイルとする

        ０      シフトＪＩＳファイルとする

        ファイルを最後まで読み込んでいないときは変更できない

@@EditCount プロパティ

取得

        編集している文書の数

@@EditCount2 プロパティ

取得

        編集している文書の数(ウィンドウの総数)

        新しいウィンドウを開く(@WindowNew)を実行したときは @@EditCount2 > @EditCount となる

@KeyTouch プロパティ

取得

        文書を変更した回数

        負の数の場合もあるので返値の絶対値を使用すること

        保存すると０にクリアされる

設定

        文書を変更した回数をセットする

        通常は０にリセットする以外は使い道がない。

@Modify プロパティ

取得

        -1      文書は変更されている

        ０      文書は変更されていない

設定

        ０以外  文書は変更されていることにする

        ０      文書は変更されていないことにする

@OverWriteMode プロパティ

        上書きモード

取得

        -1      上書きモード

        ０      挿入モード

設定

        ０以外  上書きモードにする

        ０      挿入モードにする

参照    @ModeInsert             挿入・上書きモードの切り替え

@ReadOnly プロパティ

取得

        -1      編集が禁止されている

        ０      編集可能

設定

        ０以外  編集禁止にする

        ０      編集可能にする

参照    @ModeReadOnly           編集の禁止/許可の切り換え

@Redraw プロパティ

取得

        -1      画面を表示し直すモード

        ０      画面を表示しないモード

設定

        ０以外  画面を表示し直すモードにする

        ０      画面を表示しないモードにする

@Redraw = 0

を実行するとマクロによる文書が書き換えられたり、カーソル位置が移動しても、画面を更新しません。これは、マクロを高速で実行したいときや、画面のちらつきを押さえたいときなどに便利です。ただし、画面が書き変わらないようなマクロで @Redraw = 0 を実行すると、逆に遅くなってしまいます。

　@Redraw = 0 を実行した後は以下のことに注意してください。以下のことを行わないと、画面表示が乱れることがあります。

・ マクロの実行を終了すると自動的に @Redraw = 1 が実行され、画面が更新されますが、できる限りマクロ終了前に @Redraw = 1 を実行するようにしてください。

・ @Redraw = 0 を実行した後に、カレントウィンドウを切り替えるときや入力を伴うステートメント/関数(inputbox や inputkeyなど)を実行するときは @Redraw = 1 を実行してください。

@@Redraw プロパティ

　NT&95 版 のみ使用できます。Win3.1 版 では何もしません。

取得

        -1      画面を表示し直すモード

        ０      画面を表示しないモード

設定

        ０      画面を表示しないモードにする

        １      画面を表示し直すモードにする(再表示する)

        ２      画面を表示し直すモードにする(再表示しない)

@@Redraw = 0

を実行するとアプリケーションウィンドウの表示をいっさい停止します。

　マクロの実行を終了すると自動的に @@Redraw = 1 が実行され、画面が更新されます。

　@@Redraw = 0 を実行した後に、入力を伴うステートメント/関数(inputbox や inputkeyなど)を実行するときは @@Redraw = 1 を実行してください。

@Select プロパティ

取得

        0       選択していない

        1       文字選択中(SHIFT カーソル移動　または ドラッグ)

        2       文字選択中

        3       箱型選択中(SHIFT カーソル移動　または ドラッグ)

        4       箱型選択中

        5       行選択中(ドラッグ)

        6       行選択中

参照    @BlockBoxSelect         箱型選択開始または解除

        @BlockSelect            文字列選択開始または解除

        @BlockSelectEnd         選択終了

        @BlockSelectStart       選択開始

@@BlockCopyReset プロパティ

　マウスまたは Shift+カーソル移動によってテキストを選択後、コピーしたときに選択状態を解除するかどうかを設定できます。

取得

        -1      選択領域をコピー後、選択状態は解除される

        ０      選択領域をコピー後、選択状態はそのまま

設定

        ０以外  選択領域をコピー後、選択状態は解除される

        ０      選択領域をコピー後、選択状態はそのまま

@StyleNo プロパティ

取得&設定

        使用している書式の番号（１～１０）

@ScreenHeight プロパティ

取得

        ウィンドウの高さ（文字単位）

@ScreenWidth プロパティ

取得

        ウィンドウの幅（文字単位）

[目次]


ウィンドウハンドル関連メソッド・プロパティ

@@ActiveFile メソッド

        指定したファイル名を持つ文書をアクティブにする

書式

@@ActiveFile(string)

        string:アクティブにしたい文書のファイル名

返値

        アクティブにできたときウィンドウハンドル(HWND)

        できなかったとき ０

@@ActiveFrame メソッド

        ＱＸをアクティブにする。

書式

@@ActiveFrame

@@Activehwnd メソッド

        指定したウィンドウハンドルをもつ文書をアクティブにする

書式

@@Activehwnd num

        num:アクティブにしたい文書のウィンドウハンドル

@@Activehwnd2 メソッド

        指定したウィンドウハンドルをもつ文書をアクティブにする

注意

　内部的にアクティブにするだけで、表示上はアクティブになりません。

　カレントウィンドウ（文書）に関するプロパティ・メソッドは、以後、指定したウィンドウハンドルのウィンドウが対象になります。

　@ReplaceString など、ダイアログを表示するＱＸでの基本機能を実行するときは @@Activehwnd を使用してください。

書式

@@Activehwnd2 num

        num:アクティブにしたい文書のウィンドウハンドル

@@GetHwnd メソッド

取得

　編集中のドキュメントウィンドウのウィンドウハンドルを順番に返します。

　すべて返し終わったときは、０を返します。

　カットバッファなどの編集不可能な文書は対象となりません。

　１回目の呼び出しは @@GetHwnd(1)、２回目の呼び出しは @@GetHwnd(0) とします。

例

'編集中のドキュメントウィンドウのハンドルを hwnd に格納する

dim hwnd[20] as HWND

dim j

j = 0

hwnd[j] = @@GetHwnd(1)

do while hwnd[j]<>0

        j = j + 1

        hwnd[j] = @@GetHwnd(0)

loop

@hwnd プロパティ

取得

        ドキュメントウィンドウのウィンドウハンドル

        文書を１つも編集していないときは、０となります

@@hwnd プロパティ

取得

        アプリケーションウィンドウのウィンドウハンドル

[目次]


ユーザ変数関連プロパティ

　マクロの実行を終了しても、値を保存しておくためのプロパティです。

@@Global$ プロパティ

取得

        指定したグローバル文字列に対応づけされている文字列を得る

        見つからなかったときはヌルストリング

書式

        @@Global$(string)

                string:グローバル文字列

設定

        指定したグローバル文字列に文字列を対応づける

書式

        @@Global$(string1) = string2

                string1:グローバル文字列

                string2:対応付けする文字列

　グローバル文字列は 40種類までしか使用できません。

　使用終了したグローバル文字列にはヌルストリングを対応づけてください。これにより、使用していたメモリが解放されます。

　string2 にコード０（chr$(0)）を含むことはできません。

　@@Global$ プロパティ はＱＸが終了するまで有効です。

@@FindWindowVar メソッド

取得

        指定した値のウィンドウ変数を持つ文書のウィンドウハンドルを得る

        見つからなかったときは０

書式

        @@FindWindowVar(num)

        num:探したい値

　現在開いているすべての文書のウィンドウ変数(@WindowVar)から探します。

@WindowVar プロパティ

取得&設定

        文書のウィンドウ変数

　文書を開いた直後は０に初期化されます。

　@WindowVar プロパティ は文書を編集終了するまで有効です。

@@WindowVar プロパティ

取得&設定

        全文書間で共有するアプリケーションウィンドウ変数

書式

        @@WindowVar(num)

        num:インデックス（１～５）

　@@WindowVar プロパティ はＱＸが終了するまで有効です。

[目次]


キーボード関連プロパティ

@@Key プロパティ

AutoKey の中で使用します。

取得

　入力したキー

設定

　入力したキーを変更します。

　-1 を設定すると入力したキーを無効にします。

@@Shift プロパティ

取得

        SHIFT を押している      1

        CTRL を押している       2

        MENU を押している       4

        以上の組み合わせ

        参照    予約定数(SHIFT)

@@VKey プロパティ

AutoVKey の中で使用します。

取得

　入力したキーコード

設定

　入力したキーコードを変更します。

　-1 を設定すると入力したキーを無効にします。

　一般には、押したキーを無効にするため -1 を設定します。

参照    予約定数(KEY)

@@ImeString$ プロパティ

AutoZKey の中で使用します。

取得

　ＩＭＥで入力した文字列

設定

　ＩＭＥで入力した文字列を変更します。

[目次]


その他のプロパティ

@@Err プロパティ

@@Version プロパティ

@@ListResetCache メソッド

@@ListTree プロパティ

@@ListUserString$ プロパティ

@@DialogCancel プロパティ

@@JumpMacro メソッド

@@QxDirectory$ プロパティ

@RegisterAutoClosed メソッド

@RegisterAutoSaved メソッド

@@ZenHanMode プロパティ

[目次]


@@Err
@@Err プロパティ

取得

        -1      ＱＸでの基本機能（ファイル関連）でエラーがあった

        ０      ＱＸでの基本機能（ファイル関連）で正常終了した

　ＱＸでの基本機能（ファイル関連）が正常に終了したかどうかを判定するためのプロパティです。

以下のメソッドの後で @@Err が設定されます。

@FileAllSave

@FileAppend

@FileBackup

@FileBackupAll

@FileClose

@FileNew

@FileOpen

@FileOriginal

@FileSave

@FileSaveAs

@FileSaveQuit

[目次]


@FilePrintOK
@FilePrintOK メソッド

　印刷(@FilePrint)を実行し、ＯＫボタンが押されたことにします。つまり、カレント文書を直ちに印刷します。

[目次]


@@Version
@@Version プロパティ

取得

        ＱＸのバージョン番号を100倍した数値

バージョン番号が 2.00 であれば 200、2.15 であれば 215 となります。

[目次]


@@ListResetCache
@@ListResetCache メソッド

　一覧機能(@ListFunction や @ListCaption)は一度実行すると、一覧に表示した内容を記憶し、次回一覧機能を実行したときは文書内を検索せずに、前回の内容をそのまま表示します。

　@@ListResetCache を呼び出すと、記録した内容を強制的に消去します。

　通常は使う必要のないメソッドです。


@@ListTree
@@ListTree プロパティ

取得

        -1      @ListFunction による、NIFTY/PCVAN の発言一覧はコメントツリー表示

        ０      文書にある順番通り

設定

        ０以外  @ListFunction による、NIFTY/PCVAN の発言一覧はコメントツリー表示

        ０      文書にある順番通り


@@ListUserString$
@@ListUserString$ プロパティ

取得&設定

　「ユーザ定義文字列一覧(ListUser)」で検索する文字列

[目次]


@@DialogCancel
@@DialogCancel プロパティ

取得

        -1      ダイアログが表示されるＱＸでの基本機能で、ｷｬﾝｾﾙボタンを押した

        ０      それ以外のとき

[目次]


@@JumpMacro
@@JumpMacro メソッド

　現在実行中のマクロファイル以外のマクロファイルを実行します。

　現在実行中のマクロファイルには戻ってきません。

　function の内部では @@JumpMacro は使用できません。

　自動実行マクロ内では @@JumpMacro は使用できません。

書式

        @@JumpMacro string

                string:実行したいマクロファイル名・プロシージャ名

                マクロファイル名とプロシージャ名は , で区切ります。

例

@@JumpMacro "A:\QXMACRO\TEST.MAC,testproc"

ファイル名 A:\QXMACRO\TEST.MAC、プロシージャ名 testproc のマクロを実行します。

[目次]


@@QxDirectory$
@@QxDirectory$ プロパティ

取得

　QXW32.EXE のあるディレクトリ

[目次]


@RegisterAutoClosed
@RegisterAutoClosed メソッド

　カレント文書が閉じたときに実行するマクロを登録します。

書式

        @RegisterAutoClosed string

                string:登録するマクロファイルとプロシージャ名

　@RegisterAutoClosed を呼び出したマクロと、登録されたマクロには何ら関連はありません。何らかの情報を引き渡さなければならないときは @@Global$ を使用してください。

例

@RegisterAutoClosed "TEST.MAC,Closed"

[目次]


@RegisterAutoSaved
@RegisterAutoSaved メソッド

　カレント文書が保存されたときに実行するマクロを登録します。

書式

        @RegisterAutoSaved string

                string:登録するマクロファイルとプロシージャ名

　@RegisterAutoSaved を呼び出したマクロと、登録されたマクロには何ら関連はありません。何らかの情報を引き渡さなければならないときは @@Global$ を使用してください。

例

@RegisterAutoSaved "TEST.MAC,Saved"

[目次]


@@ZenHanMode
@@ZenHanMode プロパティ

@BlockToZenHan で設定する内容です。

        数字            1

        アルファベット  2

        記号            4

        カナ            8

        スペース        16

        を足した数字

@@ZenHanMode = 1+2

とすると、以後の @BlockToZenkaku, @BlockToHankaku は数字とアルファベットのみを対象にします。

[目次]


チェックボックス プロパティ

取得

        共通設定または書式設定において、チェックボックスの状態を取得します。

        -1      チェックされている

        ０      チェックされていない

設定

        共通設定または書式設定において、チェックボックスの状態を設定します。

        ０以外  チェックする

        ０      チェックをはずす


数字入力 プロパティ

取得

　共通設定または書式設定において、入力されている数字を取得します。

設定

　共通設定または書式設定において、数字を入力するのと同じです。


文字列入力 プロパティ

取得

　共通設定または書式設定において、入力されている文字列を取得します。

設定

　共通設定または書式設定において、文字列を入力するのと同じです。


ユーザ変数
　ユーザ変数とは long 型の数値を格納できる変数です。１つのマクロを終了した後も値を保持し続けることができます。


共通設定 - 表示 プロパティ

@@ModifyResetSave プロパティ

        共通設定 - 表示 - 保存したら変更行マークをリセット

        チェックボックス プロパティ

@@TitleFullPath プロパティ

        共通設定 - 表示 - タイトルのファイル名はパス名を表示

        チェックボックス プロパティ

@@WallPaper$ プロパティ

        共通設定 - 表示 - ふすま紙

        文字列入力 プロパティ

@@MDIScrollBar プロパティ

        共通設定 - 表示 - ｱﾌﾟﾘｹｰｼｮﾝウィンドウのスクロールバー

        チェックボックス プロパティ

@@CursorTypeDOS プロパティ

        共通設定 - 表示 - カーソルの形は DOS のｴﾃﾞｨﾀ風

        チェックボックス プロパティ

@@CursorUnderLine プロパティ

        共通設定 - 表示 - カーソル行に下線を付ける

        チェックボックス プロパティ

@@MouseIBEAM プロパティ

        共通設定 - 表示 - マウスカーソルの形

取得

        -1      Ｉ

        ０      矢印

設定

        ０以外  Ｉ

        ０      矢印

@@MaxFrameHideTitle プロパティ

        共通設定 - 表示 - 最大化のときタイトルとメニューを消す

        チェックボックス プロパティ

@@StatusKanjiCode プロパティ

        共通設定 - 表示 - 表示漢字コード

取得&設定

        1       ShiftJIS

        2       JIS

        3       EUC

        4       区点

[目次]


共通設定 - ツールバー プロパティ

@@PrintToolBar プロパティ

        共通設定 - 表示 - ツールバー表示

        チェックボックス プロパティ

@@ToolBar1Line プロパティ

        共通設定 - 表示 - ツールバーは１行で表示

        チェックボックス プロパティ

@@PrintStatusBar プロパティ

        共通設定 - 表示 - ステータスバー表示

        チェックボックス プロパティ

@@PrintLineOnSBar プロパティ

        共通設定 - ツールバー - 行/桁を表示

        チェックボックス プロパティ

@@StatusPosNormal プロパティ

        共通設定 - ツールバー - 行/桁は左に

        チェックボックス プロパティ(注意：値は逆)

@@DisableToolBarCheck プロパティ

        共通設定 - 表示 - 使用不能なツールバーは×を表示

        チェックボックス プロパティ

@@PrintToolList プロパティ

        共通設定 - ツールバー - 常駐リストを表示

        チェックボックス プロパティ

@@ToolListMiscDoc プロパティ

        共通設定 - ツールバー - 強調位置連動

        チェックボックス プロパティ

@@ToolListType プロパティ

        共通設定 - ツールバー - 常駐リスト

取得&設定

        1       編集中の文書一覧

        2       最近編集した文書一覧

        3       ファイル一覧

        4       その他の一覧

@@ToolListPos プロパティ

        常駐リストの位置

取得&設定

        1       上

        2       下

        3       左

        4       右

@@ToolListAutoUpdate プロパティ

        共通設定 - ツールバー - 自動更新

        チェックボックス プロパティ

@@ListAutoClose プロパティ

　このプロパティは、一覧機能のダイアログを表示しないで、常駐リストを更新するためのものです。以後実行する一覧機能(@ListXxxx) にだけ有効です(一回のみ有効)。

取得

        -1      以後実行する @ListXxxxを表示しないで、常駐リストを更新する

        ０      通常の状態

設定

        ０以外  以後実行する @ListXxxxを表示しないで、常駐リストを更新する

        ０      通常の状態

[目次]


共通設定 - 編集 プロパティ

@@ShiftMoveSelect プロパティ

        共通設定 - 編集 - Shift + カーソル移動は選択

        チェックボックス プロパティ

@@DragSelect プロパティ

        共通設定 - 編集 - ドラッグでテキスト選択

        チェックボックス プロパティ

@@UpDownSelectLine プロパティ

        共通設定 - 編集 - 選択時の上下移動で行単位選択にする

        チェックボックス プロパティ

@@ScrollMargin プロパティ

        共通設定 - 編集 - ｽｸﾛｰﾙﾏｰｼﾞﾝ上

        数字入力 プロパティ

        （0～9）

@@ScrollMargin2 プロパティ

        共通設定 - 編集 - ｽｸﾛｰﾙﾏｰｼﾞﾝ下

        数字入力 プロパティ

        （0～9）

@@JumpScrollLine プロパティ

        共通設定 - 編集 - num行以下のジャンプはスクロール

        数字入力 プロパティ

        num（0～99）

@@HighScroll プロパティ

        共通設定 - 編集 - ↑↓でまとめてｽｸﾛｰﾙする行数

        数字入力 プロパティ

        num（1～4）

@@HighScrollTime プロパティ

        ↑↓での高速スクロールが始まるまでの時間

        ミリ秒単位で指定します。

        num（0～9999）

@@RuleType プロパティ

        共通設定 - 編集 - 罫線

取得&設定

        0       ━━

        1       ──

        2       ----

@@RuleProtect プロパティ

        共通設定 - 編集 - 罫線保護

        チェックボックス プロパティ

@@Delete0ByteFile プロパティ

        共通設定 - 編集 - 閉じるときに０バイトのファイルを削除

        チェックボックス プロパティ

@@JumpLineNotMove プロパティ

        共通設定 - 編集 - 検索時カーソル行不変

        チェックボックス プロパティ

[目次]


共通設定 - マウス プロパティ

@@StringDragDrop プロパティ

        共通設定 - マウス - 選択文字列のドラッグ＆ドロップ

        チェックボックス プロパティ

@@DragMove プロパティ

        共通設定 - マウス - ドラッグ開始時

取得

        -1      ドラッグ開始時は移動

        ０      ドラッグ開始時はコピー

設定

        ０以外  ドラッグ開始時は移動にする

        ０      ドラッグ開始時はコピーにする

@@DragRightButton プロパティ

        共通設定 - マウス - ドラッグ時の右ボタン

取得&設定

        ０      何もしない

        １      ドロップ中止

        ２      移動／コピー 切り換え

@@TrackPopupNoLeft プロパティ

        共通設定 - マウス - ﾎﾟｯﾌﾟｱｯﾌﾟﾒﾆｭｰは左ボタンを押さなくても追従

        チェックボックス プロパティ

@@WheelScroll プロパティ

        共通設定 - マウス - ホイールの回転でスクロールする行数

        数字入力 プロパティ

        num（0～9）

[目次]


共通設定 - 開く プロパティ

@@OpenDialogEx プロパティ

        共通設定 - 開く - ｢開く｣ダイアログは拡張タイプ

        チェックボックス プロパティ

@@RestoreChild プロパティ

        共通設定 - 開く - ウィンドウを閉じたときの状態に復元

        チェックボックス プロパティ

@@RestoreCursorPos プロパティ

        共通設定 - 開く - カーソル位置を閉じたときの状態に復元

        チェックボックス プロパティ

@@ZoomChild プロパティ

        共通設定 - 開く - １個目のウィンドウは最大化

        チェックボックス プロパティ

@@QOpenBinary プロパティ

        共通設定 - 開く - バイナリファイルを開くときは確認

        チェックボックス プロパティ

@@QOpenNew プロパティ

        共通設定 - 開く - 新規にファイルを開くときは確認

        チェックボックス プロパティ

@@OpenCurrent プロパティ

        共通設定 - 開く - 開くﾀﾞｲｱﾛｸﾞで最初に表示するﾃﾞｨﾚｸﾄﾘはｶﾚﾝﾄ

        チェックボックス プロパティ

@@OpenReadSize プロパティ

        共通設定 - 開く - 先頭からnumキロバイトを読み込む

        数字入力 プロパティ

        num（0～9999）

@@FreeReadSize プロパティ

        共通設定 - 開く - 暇なときにnumｷﾛﾊﾞｲﾄまで先読み

        数字入力 プロパティ

        num（0～9999）

@@OpenHeight プロパティ

        共通設定 - 開く - ウィンドウ高さ

        数字入力 プロパティ

        num（0～999）

@@OpenWidth プロパティ

        共通設定 - 開く - ウィンドウ幅

        数字入力 プロパティ

        num（0～999）

@@EUCDrive$ プロパティ

        共通設定 - 開く - EUC ドライブ

        文字列入力 プロパティ

@@InitOpenFile$ プロパティ

        共通設定 - 開く - 開くﾀﾞｲｱﾛｸﾞで最初に表示するﾌｧｲﾙ

        文字列入力 プロパティ

[目次]


共通設定 - バックアップ プロパティ

@@BackupN プロパティ

        共通設定 - バックアップ - バックアップファイル数

        数字入力 プロパティ

        0～9

@@BackupDir$ プロパティ

        共通設定 - バックアップ - バックアップディレクトリ

        文字列入力 プロパティ

@@AutoBackup プロパティ

        共通設定 - バックアップ - 自動バックアップする

        チェックボックス プロパティ

@@AutoBackupCount プロパティ

        共通設定 - バックアップ - num1回以上変更し、num2秒間キー入力がないとき

        数字入力 プロパティ

        num1（0～9999）

@@AutoBackupSec プロパティ

        数字入力 プロパティ

        num2（0～9999）

@@AutoBackupMin プロパティ

        共通設定 - バックアップ - １回以上変更し、num分間キー入力がないとき

        数字入力 プロパティ

        num（0～9999）

@@AutoBackupDelSave プロパティ

        共通設定 - バックアップ - 保存したときにバックアップを削除

        チェックボックス プロパティ

@@AutoBackupDelClose プロパティ

        共通設定 - バックアップ - 閉じたときにバックアップを削除

        チェックボックス プロパティ

[目次]


共通設定 - ヘルプ プロパティ

@@HelpFileName$ プロパティ

        共通設定 - ヘルプ - 共通ヘルプファイル名

        文字列入力 プロパティ

書式

        @@HelpFileName$(num)

        num:インデックス（１～５）

@@UserHelpFileName$ プロパティ

        共通設定 - ヘルプ - ユーザヘルプファイル名

        文字列入力 プロパティ

書式

        @@UserHelpFileName$(num)

        num:インデックス（１～３）

[目次]


共通設定 - 開発 プロパティ

@@KeywordFile$ プロパティ

        共通設定 - 開発 - キーワードファイル

        文字列入力 プロパティ

書式

        @@KeywordFile$(num)

        num:インデックス（１～３）

@@KeywordReset メソッド

書式

        @@KeywordReset num

        num:インデックス（１～３）

　キーワードファイルから読み込みなおします。

@@TagDir$ プロパティ

        共通設定 - 開発 - TAGSディレクトリ

        文字列入力 プロパティ

@@TagFilename$ プロパティ

        TAGS のファイルネーム

        文字列入力 プロパティ

@@IncludeDir$ プロパティ

        共通設定 - 開発 - includeディレクトリ

        文字列入力 プロパティ

[目次]


共通設定 - 短縮入力 プロパティ

@@ShortFileName$ プロパティ

        共通設定 - 短縮入力ファイル

        文字列入力 プロパティ

書式

        @@ShortFileName$(num)

        num:インデックス（１～３）

[目次]


共通設定 - 辞書 プロパティ

@@DictionaryFilename$ プロパティ

        共通設定 - 辞書 - 辞書ファイル名

        文字列入力 プロパティ

書式

        @@DictionaryFilename$(num)

        num:インデックス（１～５）

@@DictionaryEnglish プロパティ

        共通設定 - 辞書 - 英単語

        チェックボックス プロパティ

書式

        @@DictionaryEnglish(num)

        num:インデックス（１～５）

@@DictionaryIdiom プロパティ

        共通設定 - 辞書 - 熟語も検索

        チェックボックス プロパティ

[目次]


共通設定 - IME/ｱｲｺﾝ プロパティ

@@ImeOffFileDialog プロパティ

        共通設定 - IME/ｱｲｺﾝ - ファイルを入力するダイアログで IME off

        チェックボックス プロパティ

@@ImeOffQXEnd プロパティ

        共通設定 - IME/ｱｲｺﾝ - ＱＸ終了時に IME off

        チェックボックス プロパティ

@@FileManIconic プロパティ

        共通設定 - 表示 - ﾌｧｲﾙﾏﾈｰｼﾞｬを起動するときにｳｨﾝﾄﾞｳをｱｲｺﾝにする

        チェックボックス プロパティ

@@TopMostIcon プロパティ

        共通設定 - 表示 - アイコンにするときは常に手前に表示

        チェックボックス プロパティ

[目次]


共通設定 - マクロ プロパティ

@@MacroDirectory$ プロパティ

        共通設定 - マクロ - マクロファイルをおくディレクトリ

        文字列入力 プロパティ

        取得のみ可能

[目次]


共通設定 - 次回起動時 プロパティ

@@LoadLastFile プロパティ

        共通設定 - 次回起動時の動作 - 次回起動時

取得&設定

        0       最後に開いていたファイルを自動的に開く

        1       無題ファイルを開く

        2       何もしない

@@RestoreFrame プロパティ

        共通設定 - 次回起動時 - 親ウィンドウを閉じたときの状態に復元

        チェックボックス プロパティ

[目次]


共通設定 - システム プロパティ

@@WorkBuffer プロパティ

        共通設定 - システム - 最大編集作業領域

        数字入力 プロパティ

        （0～9999）

@@SwapDir$ プロパティ

        共通設定 - システム - 一時ﾌｧｲﾙﾃﾞｨﾚｸﾄﾘ

        文字列入力 プロパティ

@@ResidentQX  プロパティ

        共通設定 - システム - ＱＸを常駐

        チェックボックス プロパティ

@@Share プロパティ

        共通設定 - システム - 排他制御

取得&設定

        1       しない

        2       しない２

        3       他のアプリからは書き込み禁止

        4       他のアプリからは読み書き禁止

[目次]


共通設定 - 設定保存情報 プロパティ

@@ModeAllSave プロパティ

        共通設定 - 設定保存情報 - 終了時に設定を保存する

        チェックボックス プロパティ

@@RegistryLoadNum プロパティ

        共通設定 - 設定保存情報 - プロファイルファイル名

        プロファイルをファイルから読み込んだときは 0 を返す

        数字入力 プロパティ（取得のみ可能）

@@RegistrySaveNum

        共通設定 - 設定保存情報 - レジストリ番号

        数字入力 プロパティ

@@ProfileFilename$

        共通設定 - 設定保存情報 - プロファイル

        文字列入力 プロパティ(取得のみ可能)

@@FormatFilename$

        共通設定 - 設定保存情報 - 書式設定

        文字列入力 プロパティ(取得のみ可能)

@@KeyFilename$

        共通設定 - 設定保存情報 - キー定義ファイル

        文字列入力 プロパティ(取得のみ可能)

[目次]


書式設定 - 表示 プロパティ

@PrintTab プロパティ

        書式設定 - 表示 - タブを表示

        チェックボックス プロパティ

@PrintReturn プロパティ

        書式設定 - 表示 - 改行マークを表示

        チェックボックス プロパティ

@PrintFold プロパティ

        書式設定 - 表示 - 折り返しマークを表示

        チェックボックス プロパティ

@PrintEOF プロパティ

        書式設定 - 表示 - [EOF]を表示

        チェックボックス プロパティ

@PrintUnderEOF プロパティ

        書式設定 - 表示 - EOF以降の行を表示

        チェックボックス プロパティ

@PrintModify プロパティ

        書式設定 - 表示 - 変更行マークを表示

        チェックボックス プロパティ

@PrintNumber プロパティ

        書式設定 - 表示 - 行番号を表示

        チェックボックス プロパティ

@PrintPage プロパティ

        書式設定 - 表示 - ページ番号

        チェックボックス プロパティ

@PageLine プロパティ

        書式設定 - 表示 - ページ長

        数字入力 プロパティ

        num（1～999）

@PrintStatusLine プロパティ

        書式設定 - 表示 - ステータスラインを表示

        チェックボックス プロパティ

@PrintRuler プロパティ

        書式設定 - 表示 - ルーラを表示

        チェックボックス プロパティ

@PrintWidthRule  プロパティ

        書式設定 - 表示 - 折り返し桁の罫線を表示

        チェックボックス プロパティ

@InterLine プロパティ

        書式設定 - 表示 - テキストの行間

取得&設定

        0 ～ 5          0 ～ 5 ドット

        -5 ～ -2        1/5 ～ 1/2 フォント

@CharPitch プロパティ

        書式設定 - 表示 - 文字間

取得&設定

        数字入力 プロパティ

        num（0～9）

@FontName$ プロパティ

取得&設定

        フォント名

@FontSize プロパティ

取得&設定

        フォントサイズ（ドット単位）

@FontNameSize メソッド

フォント名、フォントサイズを一度に変更します

        @FontNameSize string, num

        string:フォント名（省略可能:"FixedSys")

        num:フォントの（ドット単位の）サイズ（省略可能:現在のサイズ）

@FontProportional プロパティ

取得

        フォントがプロポーショナルフォントのとき -1

        固定ピッチフォントのとき 0

@PrintZenSpace プロパティ

        書式設定 - 表示 - 全角スペースを表示

        チェックボックス プロパティ

@PrintVScroll プロパティ

        書式設定 - 表示 - 縦スクロールバーを表示

        チェックボックス プロパティ

@PrintHScroll プロパティ

        書式設定 - 表示 - 横スクロールバーを表示

        チェックボックス プロパティ

[目次]


書式設定 - 編集 プロパティ

@PrintScreenLine プロパティ

        書式設定 - 編集 - 行の数え方

取得

        -1      折り返しで１行

        ０      改行で１行

設定

        ０以外  折り返しで１行にする

        ０      改行で１行にする

@Width プロパティ

        書式設定 - 編集 - 折り返し桁数

        数字入力 プロパティ

        （20～254）

@FreeCursor プロパティ

        書式設定 - 編集 - フリーカーソル

        チェックボックス プロパティ

@FillZenSp プロパティ

        書式設定 - 編集 - 全角空白で埋める

        チェックボックス プロパティ

@AutoIndent プロパティ

        書式設定 - 編集 - オートインデント

取得&設定

        0       オートインデントしない

        1       オートインデントする

        2       オートインデントする { で１つ多く

@Tab プロパティ

        書式設定 - 編集 - タブ数

取得&設定

        タブ数（４または８）

[目次]


書式設定 - テキスト プロパティ

@TextMode プロパティ

        書式設定 - テキスト - テキスト種別

取得&設定

        0       一般テキスト

        1       Ｃ言語

        2       アセンブラ

        3       ヘルプファイル

        4       マクロ

        5       NIFTY

        6       INI ファイル

        7       PCVAN

@KeywordNum プロパティ

        書式設定 - テキスト - 使用するキーワードファイル

        1～3

@PrintComment プロパティ

        書式設定 - テキスト - コメント

        チェックボックス プロパティ

@PrintString プロパティ

        書式設定 - テキスト - 文字列

        チェックボックス プロパティ

@PrintKeyword プロパティ

        書式設定 - テキスト - キーワード

        チェックボックス プロパティ

[目次]


書式設定 - ヘルプ プロパティ

@HelpFileName$ プロパティ

        書式設定 - ヘルプ

        文字列入力 プロパティ

書式

        @HelpFileName$(num)

        num:インデックス（１～５）

[目次]


書式設定 - 保存変換 プロパティ

@CnvTabSpace プロパティ

        書式設定 - 保存変換 - タブ←→スペースの変換

取得&設定

        1       変換を行わない

        2       行頭のスペースをタブに変換

        3       タブをスペースに変換

@DeleteLastSpace プロパティ

        書式設定 - 保存変換 - 半角スペースを削除

        チェックボックス プロパティ

@DeleteLastTab プロパティ

        書式設定 - 保存変換 - タブを削除

        チェックボックス プロパティ

@DeleteLastZSpace プロパティ

        書式設定 - 保存変換 - 全角スペースを削除

        チェックボックス プロパティ

@NoLoadNoCnv プロパティ

        書式設定 - 保存変換 - 読み込んでいない部分は変換しなくてもよい

        チェックボックス プロパティ

@QChangeSave プロパティ

        書式設定 - 保存変換 - 保存時に変換してもよいか確認

        チェックボックス プロパティ

[目次]


書式設定 - ＩＭＥ プロパティ

@ImeNextOpen プロパティ

        書式設定 - ＩＭＥ 文書を開くときのＩＭＥ制御

取得&設定

        1       制御しない

        2       IME off

        3       IME on

[目次]


書式設定 - 見出し プロパティ

@PrintCaption プロパティ

        書式設定 - 見出し - 見出しを強調表示

        チェックボックス プロパティ

@CaptionIgnoreSp プロパティ

        書式設定 - 見出し - 先頭の空白を無視

        チェックボックス プロパティ

@Caption$ プロパティ

        書式設定 - 見出し - 見出し文字列

        文字列入力 プロパティ

書式

        @Caption$(num)

        num:インデックス（１～５）

[目次]


書式設定 - 禁則処理 プロパティ

@KinsokuTop プロパティ

        書式設定 - 禁則処理 - 行頭禁則文字をぶら下げる

        チェックボックス プロパティ

@KinsokuTopCount プロパティ

        書式設定 - 禁則処理 - 行頭禁則文字数

        数字入力 プロパティ

        （1～3）

@KinsokuReturn プロパティ

        書式設定 - 禁則処理 - 改行をぶら下げる

        チェックボックス プロパティ

@KinsokuBottom プロパティ

        書式設定 - 禁則処理 - 行末禁則文字を次の行に追い出す

        チェックボックス プロパティ

@KinsokuBottomCount プロパティ

        書式設定 - 禁則処理 - 行末禁則文字数

        数字入力 プロパティ

        （1～3）

@Wordwrap プロパティ

        書式設定 - 禁則処理 - ワードラップ

        チェックボックス プロパティ

[目次]


書式設定 - 辞書 プロパティ

@DictionaryUseAll プロパティ

        書式設定 - 辞書 - 辞書引きを行う

        チェックボックス プロパティ

@DictionaryUse プロパティ

        書式設定 - 辞書 - 辞書を使用する

        チェックボックス プロパティ

書式

        @DictionaryUse(num)

        num:インデックス（１～５）

[目次]


書式設定 - 設定の保存 プロパティ

@@StyleComment$ プロパティ

        書式設定 - 設定の保存 - コメント

        取得のみ可能

書式

        @@StyleComment$(num)

        num:インデックス（１～10）

@@StyleName$ プロパティ

        書式設定 - 設定の保存 - 適用するファイル

        取得のみ可能

書式

        @@StyleName$(num)

        num:インデックス（１～10）

参照    @StyleNo

[目次]


変更履歴

Version4.5β2 → Version4.5 への変更点

Version4.5β → Version4.5β2 への変更点

Version4.2 → Version4.5β への変更点

Version4.2β2 → Version4.2 への変更点

Version4.2β → Version4.2β2 への変更点

Version4.0 → Version4.2β への変更点

Version4.0β3 → Version4.0 への変更点

Version4.0β2 → Version4.0β3 への変更点

Version4.0β → Version4.0β2 への変更点

Version3.0 → Version4.0β への変更点

Version2.20 → Version3.0 への変更点

Version2.20β → Version2.20 への変更点

Version2.15β → Version2.20β への変更点


Version4.5β2 → Version4.5 への変更点

不具合修正のみ


Version4.5β → Version4.5β2 への変更点

@@WheelScroll           共通設定 - マウス - ホイールの回転でスクロールする行数

@@StatusPosNormal       共通設定 - ツールバー - 行/桁を左に

@@DictionaryFilename$ は代入も可能にした

@DeleteEndLineCr        カーソル以降改行まで削除

@DictionaryOnCursor     カーソル上の単語の辞書引きを行う

@IMERegisterWord        ＩＭＥに単語登録


Version4.2 → Version4.5β への変更点

・ 自動実行マクロ(ファイル追加方式)を追加

QAOPEN??.MAC,AutoOpen

QAOPND??.MAC,AutoOpened

QACLSD??.MAC,AutoClosed

?? は 01 ～ 10 までの数字。

・ 基本機能

@BlockToSpace           選択範囲内のタブをスペースに変換

@BlockToTab             選択範囲内のスペースをタブに変換

@BlockToKatakana        選択範囲内の全角ひらがなを全角カタカナに変換

@BlockToHiragana        選択範囲内の全角カタカナを全角ひらがなに変換

@BlockToHankaku         選択範囲内の全角文字を半角文字に変換

@BlockToZenkaku         選択範囲内の半角文字を全角文字に変換

@BlockToZenHan          半角全角変換する文字種別の設定

・ プロパティ/メソッド

@@StyleName$            書式設定 - 設定の保存 の適用するファイル名

@@StyleComment$         書式設定 - 設定の保存 のコメント

@@MacroDirectory$       共通設定 - マクロ - マクロファイルをおくディレクトリ

@@DictionaryFilename$   共通設定 - 辞書 - 辞書ファイル名

@@DictionaryEnglish     共通設定 - 辞書 - 英単語

@@DictionaryIdiom       共通設定 - 辞書 - 熟語も検索

@@JumpLineNotMove       共通設定 - 編集 - 検索時カーソル行不変

@@ZenHanMode            @BlockToZenHan で設定する内容

@ReplaceString2         キー入力なしで、全置換できるようにした

@DictionaryUse          書式設定 - 辞書 それぞれのチェックボックス

@DictionaryUseAll       書式設定 - 辞書 辞書引きを行う

　dialog 内の LISTBOX, EDIT はエクスプローラなどからファイルをドラッグ＆ドロップできるようにした。


Version4.2β2 → Version4.2 への変更点

・ プロパティ/メソッド(追加)

@HelpKeywordFile        キーワードヘルプ

@@FindAddString         文字列を検索バッファに入れる


Version4.2β → Version4.2β2 への変更点

・ プロパティ/メソッド(追加)

@RegisterAutoSaved      保存したときに自動実行するマクロを登録

@SearchComboDown        検索コンボ内の文字列を↓方向へ検索

@SearchComboUp          検索コンボ内の文字列を↑方向へ検索

・ プロパティ/メソッド(仕様変更)

@RegisterAutoClosed は同じ文字列は複数登録できないようにした。

@@FileOpenDir, @@InitOpenFile$ で指定できるファイル名の文字数を増やした。

・ ステートメント/関数(仕様変更)

dialog          ボタンが押された以外にも制御を返せるようにした

control         STATUSBAR を追加

・ ステートメント/関数(追加)

ddepoke         ＤＤＥサーバにコマンドを送る

dlgenable       コントロールを使用可能/不可能にする

dlghwnd         コントロールのウィンドウハンドルを得る

dlgvisible      コントロールを表示/非表示にする


Version4.0 → Version4.2β への変更点

・ プロパティ/メソッド(追加)

@RegisterAutoClosed     文書を閉じたときに自動実行するマクロを登録

@@KeywordReset          キーワードファイルの読み込み直し

@KeyMacroExecN          キーマクロN回実行

・ プロパティ/メソッド(仕様変更)

@StyleNo                設定もできるようにした

・ ステートメント/関数(追加)

dialog            ダイアログボックスを作成

control           コントロールを作成

dlgitemcmd        コントロールにメッセージを送る

dlgvalue          コントロールの値を設定/取得

dlgtext$          コントロールの文字列を設定/取得

dlglistboxarray   コントロールの項目を設定/取得

searchexe$        EXE のある場所をさがす

ddeinitiate       ＤＤＥ通信を開始

ddeexecute        ＤＤＥサーバにコマンドを送る

dderequest$       ＤＤＥサーバからデータを受け取る

ddeterminate      ＤＤＥ通信を終了


Version4.0β3 → Version4.0 への変更点

・ @@OpenReadonly を追加

・ date$ や inputkey などの引数のない関数は後ろに () をつけてもつけなくてもいいようにした。

・ マクロ実行中に Ctrl Break を入力すると、マクロを中止することができるようにした。

        → マクロの中止

・ iskeypressed(0) で、すべてのキーを一気にリセットできるようにした。

・ stopdestroykey


Version4.0β2 → Version4.0β3 への変更点

・ 以下のプロパティ/メソッドを追加

@@ListResetCache, @@ListTree, @@Redraw

@@KeyFilename$, @@ProfileFilename$, @@FormatFilename$

@@HighScrollTime, @@BlockCopyReset

@@TagFilename$

・ 以下の関数を追加

inrstr, inrstrb

isalnum, isalpha, isdigit, islower, isupper, isxdigit

・ inputbox$ は ｷｬﾝｾﾙしたとき返す文字列 を指定できるようにした。

・ @Insert, @OverWrite はカーソルを移動させない設定を追加


Version4.0β → Version4.0β2 への変更点

・ popupmenu はチェックマークをつけられるようにした


Version3.0 → Version4.0β への変更点

・ 以下のプロパティ/メソッドを追加

@@ToolListAutoUpdate, @@RuleProtect, @FontProportional

@@EditCount2, @@OpenFileCode, @@MaxFrameHideTitle

@@FindSame1, @@FindIncremental, @CaptionIgnoreSp, @@StatusKanjiCode

@FillZenSp, @CharPitch(*), @@ListAutoClose(*)

@Modify2SearchDown, @Modify2SearchUp

@WindowNew, @DeleteWordLeft

@WindowAppMaximize, @WindowAppMinimize, @WindowAppRestore

注: (*) のついたものはＱＸv4.0正式版が必要です。

・ 以下のステートメント/関数を追加

inputkey, inputchar, iskeypressed, anykeypressed, iskeydown

mkdir, rmdir, stopinputbox,

writeprofile, getprofile$

stopdispatchevent, searchfile$

・ 自動実行マクロ AutoInit を追加

・ popupmenu は階層化を可能にした。また、セパレータの表示を可能にした。

・ ++ -- 演算子を追加


Version2.20 → Version3.0 への変更点

・ const で文字列定数を定義できるようにした。

・ 配列の宣言の添え字には const の記号定数を使用できるようにした。

例

const MAXITEM = 100

dim array[MAXITEM]

・ 以下のステートメント/関数を追加

open, close, name, eof, freefile, lineinput, inputb$, print, seek

・ 以下のプロパティ/メソッドを追加

@@FindStopMark

@FontName$, @FontNameSize, @FontSize

@InterLine

@KinsokuBottom, @KinsokuBottomCount

@KinsokuReturn

@KinsokuTop, @KinsokuTopCount

@@PrintLineOnSBar

@PrintWidthRule

@@RegistryLoadNum, @@ResidentQX, @@RegistrySaveNum

@@ToolListMiscDoc, @@ToolListPos, @@ToolListType

@SelectStartBytePosCr, @SelectEndBytePosCr

@PrintZenSpace

@FilePrintOK

@WindowMinimize, @WindowMaximize, @WindowRestore

@ModeToolListChange, @ModeToolListMove, @ModeToolListActive

@ModePrintToolList, @ModePrintWidthRule

@MenuKey1, @MenuKey2, @MenuKey3, @MenuKey4, @MenuKey5

@MenuKey6, @MenuKey7, @MenuKey8, @MenuKey9

@ModePrintZenSpace


Version2.20β → Version2.20 への変更点

　不具合修正のみ


Version2.15β → Version2.20β への変更点

・ 以下のステートメント・関数を追加

kill

appactivate2

#32_NT #32_95

・ 以下のプロパティ・メソッドを追加

@XLeft, @QChangeSave, @@FindFromTop, @@FindGoBack

@KeySet


ＱＸでの基本機能

　キー定義ファイルで記述可能な機能（定義名）はメソッドとして、マクロで使用可能です。これらをマクロで使用するには、先頭に @ を付けます。

　ただし、MacroList（マクロ一覧）、MacroExecMain（マクロmain実行）は使用できません。

例

マクロ中で

@FileOpen

と記述すると、開くダイアログが表示されます。

■ 機能一覧 ■

@BlockBoxEdit           ウィンドウを開いて箱型カットバッファの参照

@BlockBoxPaste          箱型カットバッファをカーソル位置へ貼り付け

@BlockBoxPaste2         箱型カットバッファをｶｰｿﾙ位置へ貼り付け(文字列状)

@BlockBoxSelect         箱型選択開始または解除

@BlockClipboardCopy     選択範囲をクリップボードへコピー

@BlockClipboardCut      選択範囲を削除(クリップボードへコピー)

@BlockClipboardPaste    クリップボードからカーソル位置へ貼り付け

@BlockCopy              選択範囲を(箱型)カットバッファへコピー

@BlockCopyAppend        選択範囲を(箱型)カットバッファへ追加

@BlockCut               選択範囲を切り取る

@BlockCutAppend         選択範囲を切り取る(バッファに追加)

@BlockDelete            選択範囲を削除

@BlockEdit              ウィンドウを開いてカットバッファの参照

@BlockIndent            選択範囲内の行をインデント

@BlockModeChange        文字選択←→箱選択を切り換える

@BlockPaste             カットバッファをカーソル位置へ貼り付け

@BlockSelect            文字列選択開始または解除

@BlockSelectEnd         選択終了

@BlockSelectStart       選択開始

@BlockToCapital         選択範囲内の半角小文字を大文字に変換

@BlockToKatakana        選択範囲内の全角ひらがなを全角カタカナに変換

@BlockToHiragana        選択範囲内の全角カタカナを全角ひらがなに変換

@BlockToHankaku         選択範囲内の全角文字を半角文字に変換

@BlockToSmall           選択範囲内の半角大文字を小文字に変換

@BlockToSpace           選択範囲内のタブをスペースに変換

@BlockToTab             選択範囲内のスペースをタブに変換

@BlockToZenkaku         選択範囲内の半角文字を全角文字に変換

@BlockToZenHan          半角全角変換する文字種別の設定

@BlockUnindent          選択範囲内の行をアンインデント

@CharChangeAlpha        カーソル上の１文字を大文字小文字変換

@CharChangeJisToSjis    ｶｰｿﾙ上の2文字をJISコードとみなしシフトJISに変換

@CharControl            コントロールコードの入力

@CharDate               現在の日付をテキストに埋め込み

@CharLine               現在行をコピー

@CharMerge              ２バイトのコードを連結して全角文字に変換

@CharPReturn            疑似改行を挿入

@CharReturn             改行を挿入

@CharReturn2            改行を挿入（オートインデントしない）

@CharRuleDown           罫線を引いてカーソルを下に移動

@CharRuleLeft           罫線を引いてカーソルを左に移動

@CharRuleRight          罫線を引いてカーソルを右に移動

@CharRuleUp             罫線を引いてカーソルを上に移動

@CharShort1             短縮入力１

@CharShort2             短縮入力２

@CharShort3             短縮入力３

@CharSplit              カーソル上の全角文字を分断

@CharTab                タブの挿入

@CharTime               現在の時間をテキストに埋め込み

@Delete1LineEdit        ウィンドウを開いて行削除バッファの参照

@DeleteBack             カーソルの左の文字を削除

@DeleteChar             カーソル上の文字を削除

@DeleteEndLine          カーソル以降画面の右端まで削除

@DeleteEndLineCr        カーソル以降改行まで削除

@DeleteLine             １行削除

@DeleteLinePop          １行復活

@DeleteLinePopPush      １行復活(繰り返して実行可)

@DeleteStartLine        画面左端からカーソル位置までを削除

@DeleteWord             単語を削除

@DeleteWordLeft         カーソルの左の単語を削除

@Dictionary             辞書引きを行う

@DictionaryOnCursor     カーソル上の単語の辞書引きを行う

@IMERegisterWord        ＩＭＥに単語登録

@Dummy                  何もしない

@Dummy2                 ピッ

@ExecCommand1           コマンドの実行１

@ExecCommand10          コマンドの実行10

@ExecCommand2           コマンドの実行２

@ExecCommand3           コマンドの実行３

@ExecCommand4           コマンドの実行４

@ExecCommand5           コマンドの実行５

@ExecCommand6           コマンドの実行６

@ExecCommand7           コマンドの実行７

@ExecCommand8           コマンドの実行８

@ExecCommand9           コマンドの実行９

@ExecCommandGetDos      DOS コマンドの画面出力を編集

@ExecCommandSet         コマンドの設定

@ExecFileManager        ファイルマネージャの実行

@FileAllSave            編集中の文書をすべて保存

@FileAllSaveEnd         編集中の文書をすべて保存してＱＸを終了

@FileAppend             編集中の文書をディスク上のファイルへ追加書き込み

@FileBackup             編集中の文書をバックアップ

@FileBackupAll          編集中の文書をすべてバックアップ

@FileClose              保存しないで編集終了

@FileLastList           最近編集した文書一覧を表示

@FileList               現在編集している文書一覧を表示

@FileNew                (無題)ファイルを開く

@FileOpen               新たにファイルを開く

@FileOriginal           編集を無効にして元に戻す

@FilePrint              文書を印刷

@FileQXEnd              ＱＸを終了

@FileSave               文書を上書きして保存

@FileSaveAs             別のファイル名で文書を保存

@FileSaveQuit           上書き保存後、編集終了

@Font                   フォントの設定

@Help                   ヘルプ

@Help1                  ヘルプ１

@Help2                  ヘルプ２

@Help3                  ヘルプ３

@Help4                  ヘルプ４

@Help5                  ヘルプ５

@HelpAll1               共通ヘルプ１

@HelpAll2               共通ヘルプ２

@HelpAll3               共通ヘルプ３

@HelpAll4               共通ヘルプ４

@HelpAll5               共通ヘルプ５

@HelpIndex              ＱＸのヘルプ（目次）

@HelpKeyWord            ＱＸのヘルプ（キーワードで検索）

@HelpKeywordFile        キーワードヘルプ

@HelpOnCursor1          カーソル上のヘルプ１

@HelpOnCursor2          カーソル上のヘルプ２

@HelpOnCursor3          カーソル上のヘルプ３

@HelpOnCursor4          カーソル上のヘルプ４

@HelpOnCursor5          カーソル上のヘルプ５

@HelpUser1              ユーザヘルプ１

@HelpUser2              ユーザヘルプ２

@HelpUser3              ユーザヘルプ３

@KeyMacroExec           キーマクロの実行(中止はESCキー)

@KeyMacroExecN          キーマクロをN回実行(中止はESCキー)

@KeyMacroLoad           キーマクロをディスクから読み込み

@KeyMacroSave           キーマクロをディスクへ保存

@KeyMacroStart          キーマクロの記録開始または記録終了

@ListCLanguage          Ｃ言語の制御文一覧

@ListCase               Ｃ言語の switch-case 一覧

@ListComment            コメント一覧

@ListEdit               編集機能一覧

@ListFunction           関数定義一覧/見出し一覧

@ListIncludeDefine      Ｃ言語の #include, #define 一覧

@ListKey                キー定義一覧

@ListMark               マーク行一覧

@ListPreprocessor       プリプロセッサ一覧

@ListStruct             struct 一覧

@ListUser               ユーザ定義文字列一覧

@ListUserInput          ユーザ定義文字列一覧（入力付き）

@MacroDisableAuto       自動実行マクロの無効化

@MacroEnableAuto        自動実行マクロの有効化

@MarkReset              カーソル行のマークを解除

@MarkResetAll           すべての行のマークを解除

@MarkSearchDown         マーク行を↓方向に向かって検索

@MarkSearchUp           マーク行を↑方向に向かって検索

@MarkSet                カーソル行にマークを設定

@MarkToggle             カーソル行にマーク設定または解除

@MenuBar1               メニューバーの１番目のメニューを表示

@MenuBar2               メニューバーの２番目のメニューを表示

@MenuBar3               メニューバーの３番目のメニューを表示

@MenuBar4               メニューバーの４番目のメニューを表示

@MenuBar5               メニューバーの５番目のメニューを表示

@MenuBar6               メニューバーの６番目のメニューを表示

@MenuBar7               メニューバーの７番目のメニューを表示

@MenuBar8               メニューバーの８番目のメニューを表示

@MenuBar9               メニューバーの９番目のメニューを表示

@MenuKey1               メニュー１を表示

@MenuKey2               メニュー２を表示

@MenuKey3               メニュー３を表示

@MenuKey4               メニュー４を表示

@MenuKey5               メニュー５を表示

@MenuKey6               メニュー６を表示

@MenuKey7               メニュー７を表示

@MenuKey8               メニュー８を表示

@MenuKey9               メニュー９を表示

@ModeInsert             挿入・上書きモードの切り替え

@ModePrintComment       コメント強調表示 on/off

@ModePrintEOF           [EOF] の表示 on/off

@ModePrintFold          折り返しの表示 on/off

@ModePrintHScroll       横スクロールバーの表示 on/off

@ModePrintKeyword       キーワードの強調表示 on/off

@ModePrintModify        変更行マークの表示 on/off

@ModePrintNumber        行番号の表示 on/off

@ModePrintReturn        改行の表示 on/off

@ModePrintRuler         ルーラの表示 on/off

@ModePrintStatusBar     ステータスバーの表示 on/off

@ModePrintStatusLine    ステータスラインの表示 on/off

@ModePrintString        文字列の強調表示 on/off

@ModePrintTab           タブの表示 on/off

@ModePrintToolBar       ツールバーの表示 on/off

@ModePrintToolList      常駐リストの表示 on/off

@ModePrintUnderEOF      [EOF] よりも下の行の表示 on/off

@ModePrintVScroll       縦スクロールバーの表示 on/off

@ModePrintWidthRule     折り返し桁位置に罫線を表示 on/off

@ModePrintZenSpace      全角スペースの表示 on/off

@ModeReadOnly           編集の禁止/許可の切り換え

@ModeSetAllWindow       全ウィンドウでの共通設定

@ModeSetFormat          書式設定

@ModeToolListActive     常駐リストをアクティブにする

@ModeToolListChange     常駐リストのタイプを変更する

@ModeToolListMove       常駐リストの位置を変更する

@Modify2SearchDown      変更行マーク(含済)を↓方向に向かって検索

@Modify2SearchUp        変更行マーク(含済)を↑方向に向かって検索

@ModifyResetAll         すべての行の変更行マークを解除

@ModifySearchDown       変更行マークを↓方向に向かって検索

@ModifySearchUp         変更行マークを↑方向に向かって検索

@MoveBeginningLine      行頭に移動

@MoveDownChar           １行下に移動

@MoveEndLine            行末に移動

@MoveFileBottom         文書の最後尾に移動

@MoveFileTop            文書の先頭に移動

@MoveLastJump           ジャンプ前の行に移動

@MoveLastJumpList       ジャンプ前の行に移動（過去５回分の一覧）

@MoveLastModify         最後に変更した行に移動

@MoveLeftChar           １文字左に移動

@MoveLeftLine           現在行の左端に移動

@MoveLeftWord           前の単語に移動

@MoveLine               指定する行へ移動

@MoveLineX              指定する行へ移動

@MoveRightChar          １文字右に移動

@MoveRightLine          現在行の右端に移動

@MoveRightWord          次の単語に移動

@MoveScreenTop          カーソル行をウィンドウの最上行に表示

@MoveUpChar             １行上に移動

@Repeat                 最後の操作を繰り返し

@ReplaceRepeat          置換の再実行

@ReplaceString          文字列の置換

@ScrollDown2Line        下が見えるように２行スクロール

@ScrollDown2Line2Win    下が見えるように２ウィンドウを２行スクロール

@ScrollDown2LineR       参照用ウィンドウを下が見えるように２行スクロール

@ScrollDownHalfPage     下が見えるように半ページスクロール

@ScrollDownLine         下が見えるように１行スクロール

@ScrollDownLine2Win     下が見えるように２ウィンドウを１行スクロール

@ScrollDownLineR        参照用ウィンドウを下が見えるように１行スクロール

@ScrollDownPage         下が見えるようにページスクロール

@ScrollLeft             左が見えるように横スクロール

@ScrollRight            右が見えるように横スクロール

@ScrollUp2Line          上が見えるように２行スクロール

@ScrollUp2Line2Win      上が見えるように２ウィンドウを２行スクロール

@ScrollUp2LineR         参照用ウィンドウを上が見えるように２行スクロール

@ScrollUpHalfPage       上が見えるように半ページスクロール

@ScrollUpLine           上が見えるように１行スクロール

@ScrollUpLine2Win       上が見えるように２ウィンドウを１行スクロール

@ScrollUpLineR          参照用ウィンドウを上が見えるように１行スクロール

@ScrollUpPage           上が見えるようにページスクロール

@SearchBracketDown      ↓方向へ行頭の { / 見出し を検索

@SearchBracketUp        ↑方向へ行頭の { / 見出し を検索

@SearchComboDown        検索コンボ内の文字列を↓方向へ検索

@SearchComboUp          検索コンボ内の文字列を↑方向へ検索

@SearchPair             カーソル上の {} [] () <> のペアを検索

@SearchRepeat           最後に行った文字列検索・置換の繰り返し

@SearchRepeatDown       ↓方向への文字列検索繰り返し

@SearchRepeatUp         ↑方向への文字列検索繰り返し

@SearchString           文字列の検索

@SearchWordDown         カーソル上の単語を↓方向へ検索

@SearchWordUp           カーソル上の単語を↑方向へ検索

@TagJump                カーソル行のファイルネーム/行番号を元にジャンプ

@TagJumpBack            タグジャンプ/ダイレクトタグジャンプ前の位置に戻る

@TagJumpDirect          カーソル上の単語の定義位置にジャンプ

@TextCompare            カレント文書と参照用文書を比較

@Undo                   最後に行った編集操作の取り消し

@UndoClear              ＵＮＤＯバッファをクリア

@UndoClearAll           ＵＮＤＯバッファをクリア(全ウィンドウ)

@UndoUndo               アンドゥの取り消し

@VersionDialog          バージョン情報の表示

@WindowAppMaximize      アプリケーションウィンドウを最大化

@WindowAppMinimize      アプリケーションウィンドウをアイコンにする

@WindowAppRestore       アプリケーションウィンドウを元の大きさに戻す

@WindowCascade          ウィンドウを重ねて表示

@WindowChange           ２つのウィンドウ間で移動

@WindowCloseAll         すべてのウィンドウを閉じる

@WindowIcon             アイコンを整列して表示

@WindowMaximize         ウィンドウを最大の大きさにする

@WindowMinimize         ウィンドウをアイコンにする

@WindowNext             次のウィンドウに移動

@WindowNew              新しいウィンドウを開く

@WindowRepaint          ウィンドウを再表示

@WindowRestore          ウィンドウを元のサイズに戻す

@WindowTileTate         ウィンドウを縦に並べて表示

@WindowTileTate2        ２ウィンドウを縦に並べて表示

@WindowTileYoko         ウィンドウを横に並べて表示

@WindowTileYoko2        ２ウィンドウを横に並べて表示

注意

　@KeyMacroExec, @KeyMacroExecN はマクロを終了した時点でキーマクロ動作開始になります。よって、マクロ中で何回実行しても、最初の一回だけが有効となります。


予約定数一覧

以下はあらかじめ定義されている定数です。

予約定数(真偽値)

TRUE            -1

FALSE           0

予約定数(KEY)

KEY_LBUTTON     &H01

KEY_RBUTTON     &H02

KEY_CANCEL      &H03

KEY_MBUTTON     &H04

KEY_BACK        &H08

KEY_TAB         &H09

KEY_CLEAR       &H0C

KEY_RETURN      &H0D

KEY_SHIFT       &H10

KEY_CONTROL     &H11

KEY_MENU        &H12

KEY_PAUSE       &H13

KEY_CAPITAL     &H14

KEY_KANA        &H15

KEY_KANJI       &H19

KEY_ESCAPE      &H1B

KEY_CONVERT     &H1C

KEY_NONCONVERT  &H1D

KEY_SPACE       &H20

KEY_PRIOR       &H21

KEY_NEXT        &H22

KEY_END         &H23

KEY_HOME        &H24

KEY_LEFT        &H25

KEY_UP          &H26

KEY_RIGHT       &H27

KEY_DOWN        &H28

KEY_SELECT      &H29

KEY_PRINT       &H2A

KEY_EXECUTE     &H2B

KEY_SNAPSHOT    &H2C

KEY_INSERT      &H2D

KEY_DELETE      &H2E

KEY_HELP        &H2F

KEY_PAD0        &H60

KEY_PAD1        &H61

KEY_PAD2        &H62

KEY_PAD3        &H63

KEY_PAD4        &H64

KEY_PAD5        &H65

KEY_PAD6        &H66

KEY_PAD7        &H67

KEY_PAD8        &H68

KEY_PAD9        &H69

KEY_MULTIPLY    &H6A

KEY_ADD         &H6B

KEY_SEPARATOR   &H6C

KEY_SUBTRACT    &H6D

KEY_DECIMAL     &H6E

KEY_DIVIDE      &H6F

KEY_F1          &H70

KEY_F2          &H71

KEY_F3          &H72

KEY_F4          &H73

KEY_F5          &H74

KEY_F6          &H75

KEY_F7          &H76

KEY_F8          &H77

KEY_F9          &H78

KEY_F10         &H79

KEY_F11         &H7A

KEY_F12         &H7B

KEY_F13         &H7C

KEY_F14         &H7D

KEY_F15         &H7E

KEY_F16         &H7F

KEY_F17         &H80

KEY_F18         &H81

KEY_F19         &H82

KEY_F20         &H83

KEY_F21         &H84

KEY_F22         &H85

KEY_F23         &H86

KEY_F24         &H87

KEY_LOCK        &H90

KEY_SCROLL      &H91

&H30 ～ &H39 は数字

&H41 ～ &H5A は英字

参照    @@VKey  sendkey

予約定数(SHIFT)

SHIFT_MASK      1

CTRL_MASK       2

ALT_MASK        4

参照    @@Shift

予約定数(MOUSE)

LEFT_BUTTON     1

RIGHT_BUTTON    2

MIDDLE_BUTTON   4

予約定数(DIALOG)

MB_OK                   0

MB_OKCANCEL             1

MB_ABORTRETRYIGNORE     2

MB_YESNOCANCEL          3

MB_YESNO                4

MB_RETRYCANCEL          5

MB_ICONHAND             &H0010

MB_ICONQUESTION         &H0020

MB_ICONEXCLAMATION      &H0030

MB_ICONASTERISK         &H0040

MB_DEFBUTTON1           &H0000

MB_DEFBUTTON2           &H0100

MB_DEFBUTTON3           &H0200

MB_APPLMODAL            &H0000

MB_SYSTEMMODAL          &H1000

MB_ICONINFORMATION      &H0040

MB_ICONSTOP             &H0010

IDOK                    1

IDCANCEL                2

IDABORT                 3

IDRETRY                 4

IDIGNORE                5

IDYES                   6

IDNO                    7

参照    msgbox

予約定数(CODE)

CODE_RETURN             &HFFFFFF20 (-224)

CODE_EOF                &HFFFFFF21 (-223)

参照    @Code

予約定数(INPUTBOX)

INPUTBOX_CANCEL         &H80000000

参照    inputbox

予約定数(CONTROL)

共通スタイル

WS_DISABLED             使用不可能にする

WS_CLIPSIBLINGS         子ウィンドウをクリップする

WS_BORDER               枠線を表示

WS_DLGFRAME             ダイアログボックスの枠

WS_VSCROLL              縦スクロールバー

WS_HSCROLL              横スクロールバー

WS_SYSMENU              コントロールメニュー

WS_THICKFRAME           サイズ変更境界のある枠

WS_GROUP                グループ

WS_TABSTOP              タブストップ

エディット(EDIT)コントロールスタイル

ES_LEFT                 左詰で表示

ES_CENTER               センタリングで表示(ES_MULTILINE のときのみ有効)

ES_RIGHT                右詰で表示(ES_MULTILINE のときのみ有効)

ES_MULTILINE            複数行入力

ES_UPPERCASE            入力した文字を大文字にする

ES_LOWERCASE            入力した文字を小文字にする

ES_PASSWORD             パスワード入力

ES_AUTOVSCROLL          自動縦スクロール(ES_MULTILINE のときのみ有効)

ES_AUTOHSCROLL          自動横スクロール

ES_READONLY             入力不可

ES_WANTRETURN           リターンキーを受け付ける(ES_MULTILINE のときのみ有効)

ES_NUMBER               数字のみ入力可能(Windows 95, NT4.0 のみ有効)

ボタン(BUTTON)コントロールスタイル

BS_PUSHBUTTON           通常のボタン

BS_DEFPUSHBUTTON        デフォルトボタン

BS_AUTOCHECKBOX         チェックボックス

BS_GROUPBOX             グループボックス

BS_AUTORADIOBUTTON      ラジオボタン

スタティック(STATIC)コントロールスタイル

SS_LEFT                 左詰表示

SS_CENTER               センタリング表示

SS_RIGHT                右詰表示

SS_LEFTNOWORDWRAP       ワードラップしない左詰表示

リストボックス(LISTBOX)コントロールスタイル

LBS_SORT                項目をソート

LBS_MULTIPLESEL         複数選択

LBS_USETABSTOPS         タブストップを使用する

LBS_NOINTEGRALHEIGHT    高さを項目の倍数に調整しない

LBS_MULTICOLUMN         横スクロールタイプ

LBS_EXTENDEDSEL         複数選択２

LBS_DISABLENOSCROLL     スクロールバーを常に表示

LBS_STANDARD            LBS_SORT | WS_VSCROLL | WS_BORDER

コンボボックス(COMBOBOX)コントロールスタイル

CBS_SIMPLE              シンプルコンボ

CBS_DROPDOWN            ドロップダウンコンボ

CBS_DROPDOWNLIST        ドロップダウンリスト

CBS_AUTOHSCROLL         自動横スクロール

CBS_SORT                項目をソート

CBS_NOINTEGRALHEIGHT    高さを項目の倍数に調整しない

CBS_DISABLENOSCROLL     スクロールバーを常に表示

CBS_UPPERCASE           入力した文字を大文字にする(Windows 95, NT4.0 のみ有効)

CBS_LOWERCASE           入力した文字を小文字にする(Windows 95, NT4.0 のみ有効)

参照    control

通知コード(DIALOG)

DLGN_CLICKED

DLGN_DOUBLECLICKED

DLGN_CHANGE

DLGN_SELCHANGE

参照    dialog