徒然なるままに 

BGMはモダンジャズ、暇つぶしの自分史

VB.NETに悪戦苦闘

2015年11月18日 | 日記・エッセイ・コラム

Amazing Golf Master ・・・ 20年以上使っているゴルフスコアの集計プログラムである。
最初のバージョンは、Windows3.1のAccess1.0で作成した。

当時は、バブルの全盛期で、ゴルフブームだった。
コンペの参加人数も多く、スコアの集計が大変だったため、パソコンを持ち込んで集計するようになった。最初はEXCELだったが、データを残すためにAccessに変えた。
パソコンは「COMPAQ CONTURA 420CX」、ディスプレイは10.4インチ TFT液晶 カラー、肩が抜けそうになるくらい重かった。
今振返ってみると、隔世の感がある。

その後、OSがWindows95に変わり、Accessも2.0にバージョンアップされた。
このバージョンアップは互換性を無視したもので、Access1.0で作りこんだプログラムは破棄せざるを得なかった。
Accessでもう一度作り直すことには抵抗があったので、データだけを再利用し、プログラムはVisualBasic4.0で作り直すことにした。
煩雑な表操作には、市販ソフトの「Spread OCX」を使った。
以来、約20年、VisualBasicは6.0に変わったが、今も使い続けている。
ただし、WindowsVistaから、VisualBasic6.0(VB6)は使用できなくなった。
VB6ランタイムはサポートされているのでプログラムは動く。
最新のWindows10もVB6のランタイムはサポートされるということなので、しばらくは安心だ。



とはいえ、VB.NETへの移行を考えることにした。
VB.NETを基礎から勉強するつもりはなく、問題にぶちあたったら解決策をネットで調べる。
まず、一番簡単なメニュー画面をVB.NETで作り直すことから始める。
Accessのときよりは再利用できる部分も多い筈なので、最初のハードルを越えれば、その後はすんなり行くと思った。



簡単にはいかなかった。
データベースのアクセス、コントロールのプロパティやイベント、核となるところのコーディングがことごとく使えない。
どうしてここまで変えなくてはいけないのか、無性に腹が立った。
特に、難敵だったのが、DataGridViewである。
キーイベントを拾うのも、セルを移動させるのも、簡単にはいかない。
SpreadOCXのシンプルなコーディングが懐かしく思えた。

ともあれ、約1か月かかってほぼ移行は完了した。
まだ問題は残っている。
DataGridViewでEnterキーを押すと、カーソルが下に移動してしまう。
横に移動させたい。
これには、DataGridViewのカスタムコントロールを作るしか方法がないらしい。
カスタムコントロールの作り方は分かったが、フォームをカスタムコントロールで作り直さなければいけない。
やるか、やめるか、今はその気になれない。

お気に入り名盤! ジョージ・ウォーリント:Jazz For The Carriage Trade

 

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« いつもと違う赤かぶ漬け | トップ | 神宮外苑いちょう祭り »
最新の画像もっと見る

コメントを投稿

日記・エッセイ・コラム」カテゴリの最新記事