新しく発言する EXIT インデックスへ
テキストウインドウの大きさ

  テキストウインドウの大きさ 唐瀬人 2006/01/17 14:53:27 
  基本的にEXECUTE文で実行して得られた結果は... 白石和夫 2006/01/17 15:50:46 
  関連付けされたファイルから実行したとき、... 青木太一 2006/01/17 18:49:27 
   └ヘルプのコマンドライン引数のところに/NRが... 白石 和夫 2006/01/17 21:10:35 
    ├白石様・青木様ご回答有難うございます。 唐瀬人 2006/01/17 22:05:50 
    └ver4.5.0で, 白石 和夫 2006/01/23 18:06:06 
     └ver5.4.0ですね。動作確認しました。 唐瀬人 2006/01/23 20:28:13 

  テキストウインドウの大きさ 唐瀬人 2006/01/17 14:53:27  ツリーへ

テキストウインドウの大きさ 返事を書く
唐瀬人 2006/01/17 14:53:27
たびたびの質問お許しください。

BASIC.exe から起動しプログラムを実行する場合にはテキストウインドウの位置及び大きさは自由に変えられるのですが(再起動するとこれはリセットされますが。)、関連付けされたファイル.basを選択して直接プログラムを実行する場合、PAUSE命令で自動終了を待機させてもpauseウインドウが出ている間はこれをバックグラウンドにまわすこともできずテキストウインドウの操作が無効なので、初期画面から位置や大きさを変えたりスクロールして上の方にある表示内容を確認することができません。pauseウインドウを消すと表示内容を確認するまもなく即座に終了してテキストウインドうは消えてしまいます。現状はWAIT DELAY命令などを使って間を長く取るかinput文などを利用して時間を稼ぐ方法が考えられますが、よりスマートな方法はありますでしょうか。テキストウインドウの位置や大きさをどこかで規定できるか過去の状態を再現できればそれが一番いいのですが。

  基本的にEXECUTE文で実行して得られた結果は... 白石和夫 2006/01/17 15:50:46  ツリーへ

Re: テキストウインドウの大きさ 返事を書く
白石和夫 2006/01/17 15:50:46
基本的にEXECUTE文で実行して得られた結果はファイルを利用してもとに戻すのが原則です。つまり,呼ばれた側は結果をファイルに保存し,実行が終わったところで呼び出した側がファイルから読み込むのが最も自然な処理方法です。
実行結果をさかのぼって見る(スクロールする)のが目的ならば,PAUSE文でなくInput文を使うことでできるはずです。
テキストウィンドウのハンドル値をWinHandle("TEXT")で取得できるので,これをWin32APIに渡せば,強引にウィンドウの位置や大きさを変えることは可能かもしれません。

  関連付けされたファイルから実行したとき、... 青木太一 2006/01/17 18:49:27  ツリーへ

Re: テキストウインドウの大きさ 返事を書く
青木太一 2006/01/17 18:49:27
関連付けされたファイルから実行したとき、自動実行しないようにする方法があります。
[ヘルプ]−[システム情報]−[BASIC.INI]
のNoRunの項をごらんになってください。

そういうことではなかったら、失礼。

   └ヘルプのコマンドライン引数のところに/NRが... 白石 和夫 2006/01/17 21:10:35  ツリーへ

Re: 関連付けされたファイルから実行したとき、... 返事を書く
白石 和夫 2006/01/17 21:10:35
ヘルプのコマンドライン引数のところに/NRがあります。
ここに,「実行した後,終了しない」を意味するオプションを追加することを検討中です。
つまり,
オプションなし  実行後すぐ終了
新オプション   開いて実行後待機
/NR 開いて実行せずに待機

EXECUTE文にBASIC.EXE本体を指定して,引数としてこれらオプションとファイル名を指定すれば選択肢が広がります。

    ├白石様・青木様ご回答有難うございます。 唐瀬人 2006/01/17 22:05:50  ツリーへ

Re: ヘルプのコマンドライン引数のところに/NRが... 返事を書く
唐瀬人 2006/01/17 22:05:50
白石様・青木様ご回答有難うございます。

自動実行させるのは前提で、実行後にテキストウインドウの内容をすべて把握してからから終了させられないかというのが要旨です。

現在は DECLARE EXTERNAL FUNCTION YesNoBox$ 命令をいれて、ダイアログ確認後終了させるようにしてなんとか用は果たせていますが、白石様のおっしゃる「実行した後終了しない」コマンドライン引数が実現すればダイアログも出さず、よりスマートな形で処理できるようになると思います。

なお、テキストウインドウの位置及び大きさの指定については、白石様のレスポンスも踏まえいろいろ考えてみましたが、指定したウインドウの位置・サイズ変更を行えるフリーソフト
「Maximize Assistant」
http://home.att.ne.jp/red/hiro-ebi/lib/lib.html
を利用して、BASICプログラムの実行時だけでなくWINDOWS環境下で開く全てのウインドウを対象とした解決を図ることにしました。プログラムファイル名に意図して同じキーワードを含めると全く同じレイアウトでウインドウ表示させることができるので、実行するプログラムの分類ごとに表示レイアウトを可変させるなんてことも可能となります。タスクトレイ常駐ですので多少リソースをくいますがそれほど気にならず、今のところ快適に処置してくれています。

    └ver4.5.0で, 白石 和夫 2006/01/23 18:06:06  ツリーへ

Re: ヘルプのコマンドライン引数のところに/NRが... 返事を書く
白石 和夫 2006/01/23 18:06:06
ver 4.5.0で,
EXECUTE "BASIC.EXE" WITH("/OR","ABC.BAS")
みたいな感じで,実行後そのまま待機にできます。

     └ver5.4.0ですね。動作確認しました。 唐瀬人 2006/01/23 20:28:13  ツリーへ

Re: ver4.5.0で, 返事を書く
唐瀬人 2006/01/23 20:28:13
ver 5.4.0 ですね。動作確認しました。


インデックスへ EXIT
新規発言を反映させるにはブラウザの更新ボタンを押してください。