【DO!BOOK・ページリンク】
2008_migaro_techreport_001   132 / 136

BOOKをみる

10秒後にBOOKのページに移動します


130 福井 和彦 株式会社ミガロ システム事業部 システム1課 あなたはブラインドタッチができますか? 略歴 1972 年3 月20 日 生 1994 年大阪電気通信大学 工学部卒 2001 年4 月株式会社ミガロ入社 2001 年4 月システム事業部配属 現在の仕事内容 主にDelphi/400 を使用したシステムの 受託開発を担当しており、 要件確認から納品・フォローに至るまで、 システム開発全般に携わっている。 また、Delphi/400 の導入支援や セミナーの講師も行っている。  突然ですが、皆さんは「ブラインドタッ チ」はできますか?  このようなところで堂々と言えることで はありませんが、しかも、私はこの業界に 入って14 年以上になるのですが、現在に 至るまで「ブラインドタッチ」をマスター しようと練習をしてきませんでした。だか らという訳でもないでしょうが、私はキー ボード入力があまり得意ではありません。 そんな私だからこそ思いついたであろう今 回の話題をここから述べます。私と同じよ うな経験をされた方には、共感してもらえ る何かがあるのではないかと思います。  最近ではプログラムを書く機会が減りま したが、プログラムを頻繁に書いていた頃 は「いかにキーボード入力が少なく、プロ グラムが書けるか」ということを考え、「コ ピー&ペースト」や「文字の置き換え」等 いろいろな方法を駆使していました。もち ろん、プログラムを作成する時間の割合は、 大半が考えている時間であり、書いている 時間の占める割合はそんなに多くはないと 思います。しかし、このプログラムを書い ていく中で一番面倒だったのが項目転送の 文です。  例えばDelphi で、ファイルから画面の 項目に値を転送する場合、次のように記述 します。 "edtWKTOCD.Text := Table1.FieldByName ('WKTOCD').AsString;"  このような転送文を画面の項目の数だけ 書かなければならず、更新がある場合には、 画面からファイルへの逆方向の転送文も必 要になってきます。これがけっこう面倒な 作業なのです。どちらかと言えば単純作業 で、転送の数が多くなればなるほど時間も かかり、間違える可能性も高くなってきま す。ブラインドタッチに自信のある方でも、 この転送文を1 文字1 文字キーボード入力 で書く方は少ないと思います。  今回の話題は、「Delphi/400 の転送文を 書く」ということにスポットを当て、キー ボード入力の回数を少なくかつより早く正 確に作れるか、ということを考えて、創意 工夫をしてきたある開発者の話です。  ただし、これから出てくる各手法につい ては、弊社のコーディングルールを前提に しているところが多々ありますので、あら かじめご了承いただきたいと思います。  では、興味をもたれた方はこの先を読み 進めていただければ幸いです。  先程の転送文を書く場合、次に書く方法 を使われている方が多いのではないかと思 います。 転送文の書き方 @ 1 行目の転送文を書く A 1 行目の文を必要な転送項目分コピー する B 2 行目以降の、左辺のコンポーネント 名、右辺の"FieldByName" のフィー ルド名と"As ." の型指定を変更する  私の場合、Bのときにエミュレーター画 面を開き、"DSPFMT" コマンドを使って ファイルレイアウトを表示します。次に、 表示したファイルレイアウトの項目名をコ ピーして、Delphi 画面に切り替えコンポー ネント名とフィールド名にそれぞれ貼り付 けます。こうすることで、キーボードの入 力が「Ctrl + "C"」「Ctrl + "V"」「Alt + Tab」「Shift +矢印キー」に絞られます。 ここで使用するアルファベットは"C" と "V" だけなので、ブラインドタッチが苦手 な私でも容易に操作をすることができるの です。キーボード操作の流れは以下のよう になります。 キーボード操作の流れ @ エミュレーター画面のコピーする項目 名を「Shift +矢印キー」で範囲選択する A「 Ctrl + "C"」で項目名コピーする B「 Alt + Tab」でDelphi 画面に切り替 える C 貼付先を「Shift +矢印キー」で範囲選 択する("FieldByName" のフィールド 名はマウスでダブルクリックしても楽 に選択できる) D「 Ctrl + "V"」で貼り付ける E「 Alt + Tab」でエミュレーター画面に 切り替える COLUMN