過去の桐井戸端BBS (桐ver.8)
22360 フォーカスが動くたびに違ったコマンドボタンが現れるようにしたいのですがコマンドボタンのフォーカスを利用できないでしょうか 初心者 2003/09/15-21:36
桐ver8の初心者です。
画面を左右2分割にして、左側に上下にコマンドボタンを数個作ります。
タブでフォーカスが動くたびに右側に違ったコマンドボタンが現れるようにしたいのですが、わかりません。
誰か教えてください。最終的には、右側のコマンドボタンで作業に入れるようにしたいのですが
22361 Re:コマンドボタンのフォーカスを利用できないでしょうか 悲しげ 2003/09/15-22:11
記事番号22360へのコメント
フォーカスが変わるごとにコマンドボタンも変更することは、
「フォーカス*」系のイベントを使えば簡単に実現できます。

ただ、判らないのが

>画面を左右2分割にして、

の部分です。何のために、あるいは何と何を左右に2分割するのでしょう?

と云うのは、
イベントを使うには、フォームでもって処理する必要があるのですが、
ここで云う「2分割」が、フォームふたつを意味するのなら、扱いはやや複雑になるような気がします。
ひとつのフォームか、せいぜいメイン&サブフォーム辺りを使った方が扱いが簡単なように思えますものですから。

ps:
タイトルである「コマンドボタンのフォーカスを利用できないでしょうか」の意味も難解ですが(^^;)、
これはもしかして、kev(イベント)を一切使わないで、コマンドボタンだけで可能かどうかを問うているのなら、
う〜ん、私はできるとは思えない、っつーか、そのようなやり方は私は全く知りません。
22362 Re:コマンドボタンのフォーカスを利用できないでしょうか うにん 2003/09/15-22:49
記事番号22360へのコメント
>画面を左右2分割にして、左側に上下にコマンドボタンを数個作ります。タブでフォーカス
>が動くたびに右側に違ったコマンドボタンが現れるようにしたいのですが、わかりませ
>ん。誰か教えてください。最終的には、右側のコマンドボタンで作業に入れるようにし
>たいのですが

イメージはなんとなくわかりますが、左のコマンドボタンを「タブで」動かすのは何でですか?
右側のコマンドボタンを押すときにマウスでクリックするなら左もマウスでいいと思うのですが。

22363 質問の意味を確認 佐田 守弘 2003/09/16-00:58
記事番号22360へのコメント
初心者さん
質問の意味を確認させて頂きます。
>画面を左右2分割にして、左側に上下にコマンドボタンを数個作ります。タブでフォーカス
>が動くたびに右側に違ったコマンドボタンが現れるようにしたいのですが、

私は上記の意味を、左側にメインのメニュー(メニューの大項目)があって、これを選ぶと、
選んだメニューの大項目に応じて、右側に対応するサブメニューを表示するのではないかという意味に受け止めました。
そういう意味で良いのでしょうか。

今分かる範囲で一部コメントします。

・イベントが必要
上記を実現するには、イベントが必須になるでしょう。
それも結構面倒な上級レベルの力量が求められます。

・画面を左右に分けてと書かれていますが、分けると言うよりも以下の様な作りになるでしょうね。
方法1) 1つのフォーム画面に表示する
左側はコマンドボタンを並べるだけですが、右側のコマンドボタンは、左側のメニューに
対応したグループでファミリを設定しておきます。
そして、左側のメニューに応じて表示と非表示を切り替えれば、左のメニューに応じた表示になります。
方法2) サブフォームを使う
右側のメニューグループを配置したサブフォームを左側のメニュー項目の数だけ作っておきます。
そして、左側のメニューに対応したサブフォームのみを表示に切り替えます。

・タブでメニューを動かす
タブで動かす必要はありません。カーソルキーで動かせます。
フォーカスを取得したコマンドボタンのみ、表示色を変えるようにすれば、結構引き立ったメニューができます。

佐田守弘(KS-00119)
22378 Re:コマンドボタンのフォーカスを利用できないでしょうか 初心者 2003/09/16-23:25
記事番号22360へのコメント
早速のアドバイスありがとうございました。
初心者のため勉強不足で訳のわからない質問をしてしまったような気がします。
以前、経理用のソフト(MS-DOS版)を使ったことがあるのですが、
それはメインメニューのボタン(受注、売上、請求等)に対応したサブメニューのボタン(入力、訂正、キャンセル等)が現れ、
作業をしたいボタンをカーソルで選択し、リターンキーを押すとデータ表に入っていくというものでした。
それと同じようなことができないものかと思って質問したつもりでした。
私とすれば極力マウスを使わないで桐が使えないものかと考えているのですが・・。
22381 Re:コマンドボタンのフォーカスを利用できないでしょうか 佐田 守弘 2003/09/17-09:10
記事番号22378へのコメント
初心者さん
 >以前、経理用のソフト(MS-DOS版)を使ったことがあるのですが、そ
 >れはメインメニューのボタン(受注、売上、請求等)に対応した
 >サブメニューのボタン(入力、訂正、キャンセル等)が現れ、
ほぼ私の予想通りでした。

私がコメントした方法でほぼ可能です。
コマンドボタンを並べてメニューを作った場合、マウスでも操作できますが、
カーソルキーでメニューを選んでEnterキーで選ぶといった方法が行えます。

前コメントで、サブメニュー側のコマンドボタンをメインメニューのグループ毎に複数作って、
表示非表示を切り替える方法と、サブフォームを複数作って切り替える方法を書きました。
その後考えてみたところ、サブメニュー側に表示するメニューのコマンドボタンは1種類だけにしておき、
メインメニューの選択に応じてサブメニュー側の表示と機能を切り替える方が、
フォームを作るのが少しは簡単かと思いました。

少しは簡単と言いましたが、フォームの作りこみは少し簡単ですが、イベントの作りこみは逆に面倒になります。

ちょうど良い機会ですから、イベントを勉強されれ見てはいかがでしょうか。
かつてのMS-DOS版の経理ソフトに近いイメージの喪のも作れると思います。

佐田守弘(KS-00119)

戻る