まずはこのエラーである。
これは、workbenchがxamppへの接続にSSLが要求されているが、xamppがそもそもSSLに対応していない、というのが原因らしい。
が選択できたので、その設定にすると、無事にMySQLとworkbenchが接続できた。
もう2022年である。
前回の投稿が2019年なのはともかく。
去年2021年は、今までで一番高速に過ぎていった。
まるでそんな年はなかったかのように…。
歳を取ると時の流れが速くなるとは言うが、そんな生ぬるい速さではなかった。
今年は、そういうことにならないように、1月1日から、色々やることにした。
まずは、購入して、ほぼ放置していた、ゲーミングデスクトップ。
いくつかゲームをインストールして遊んだ程度である。
まずは、これをプログラム環境にすることから。
ちょうど、メインで使用していたノートPCの調子が悪くなったので、各種データの移行も併せて色々やろう。
…で、さくっとやったのが以下。
・いつものテキストエディタのインストール
・VisualStudioのインストール
・xamppのインストール
・mysql workbenchのインストール
・Android Studioインストール
インストール後は、ちゃんと色々起動して、ビルド・接続などができるところまでは完了。
今時、こういうブログで色々書いて公開できるのに、
わざわざ年会費払って独自ドメイン取得している個人はそんなにいないだろうな…。
放置状態だから、ページもボロボロだし、サーバー側のバージョンアップの関係で、データベースも初期化されてるから、動作もやばいだろうし。
次にするのは、このWebサイトの手入れか、Androidアプリの作成かな。
毎日プログラムしてるけど、ほぼ更新してない!
HSPもcocos-2dxも全く触れて無いわ!
つか、ほぼ毎日、終電だゴルア!
まあ、楽しいのでいいんですがね。
不具合修正のプログラムが楽しい人ってそうそういないか。
で、不具合について。
Windows.forms.System.SplitContainerを使ってフォームを作る。
これは、左右2つのパネルをSplitterで分割するフォームパーツだ。
このSplitterはアプリ使用者が自由に動かすことができるが、
アプリを再起動すると、デフォルト位置に戻ってしまうので、位置をキープして欲しい、というもの。
実は、保存する際に、値はちゃんとシリアライズされている。
ではなぜ、ずれてしまうのか?
それは、いわゆる仕様バグである。
まず、SplitContainerを、幅200で初期化・作成する。
Splitterの位置は、100(ちょうど中央)とする。
※ちなみにSplitter自体の幅は4
ここまではちゃんと、再起動時にデシリアライズされている。
問題は…。
作成したこのSplitContainerを、Dockに収めていることだ。
その際、300とか400とか大きめのDockにはめ込んでいるため、
幅200で作ったSplitContainerが、引き伸ばされる。
全体が均等に引き伸ばされるため、spliterの位置が、右にずれるのだ。
そしてこれが保存され、次回再度引き伸ばされ…。
デフォルトに戻るどころか、どんどん右にずれていく、というのが現状だったようだ。
解決するのは簡単で、Splitter自体は自由に動かせるが、ウインドウサイズを変えても、
パネルサイズを変更しない、fixedPanelプロパティで、Panel1(左側)を固定にするだけでいい。
…のだが!
実は罠があるらしい。
今開発しているツールは、各種機能が複数のタブによって仕分けされており、
この複数のタブそれぞれに、SplitContainerが使われている。
前半で述べた方法で、これらすべてのSplitterの位置は個別に保存されるようになったのだが、
どうやら、リセットするトリガーがあるらしい。
タブ3にある、Splitterの位置を動かしたら、なぜかタブ1とタブ2の位置がリセットされるのだ。
(現象はランダムで、変わらない場合もある)
現在、このリセットされるトリガーが何か?が調査対象である。