Studioは10.2をインストールしてあったのだが、それを久々に動かし、ライセンス情報が消えていたので入力し直した。10.2R2にするのはさほど面倒ではなかったが、ウェルカムページのパッチは、自分でファイルのバックアップとコピーをする必要があり、やれやれ、と思った。インストーラを作るより確実かもしれない。今はプログラミング関連の仕事は来ないので、自分の使うプログラムをちょこちょこと作る程度である。Studioも更新した。「更新」ボタンを押すだけである。Studio(Delphi/C++Builder)を入れ直すことにした。前回は10.1だったが、今日見ると10.2になっていた。C++BuilderとDelphiの両方を入れるとなると面倒なのは相変わらずだが、前回よりはまともな手順が判明した。C++Builderをインストールし、ライセンスマネージャでDelphiのキーを登録して、下図のような状態に持っていく。Studioの展開」→「プラットフォームマネージャと拡張機能マネージャ」を開く。Delphiにチェックを入れて「適用」をクリック。Studioを起動すると(C++Builderではないので注意)、こんな風にC++BuilderとDelphiの両方が起動画面に現れる。両方のプロジェクトを作れるようになっている(らしい)。ちなみに、先ほどの青い画面で「知追加オプション」を選ぶと、サンプルやヘルプのインストールができる。ヘルプをインストールすると、「ヘルプ」メニューがこんな感じになる。コマンドプロンプトでbcc32が使えてもdcc32が使えないのは相変わらず。バージョンは0.1上がったようだ。(金)Delphi:ネットを信じちゃいけないよDelphiでちょっとしたソフトを作っている。「TableMaker」というソフトで、HTMLの表を作るものだ。自分のブログの記事からテーブルを生成したいと思っていて、どれでやろうかと考えていたのだが、Delphiがいいかな、ということで、久々のDelphiの練習の意味も兼ねて作り始めた。起動するとグリッド(格子、一覧表)画面が現れる。3行3列のテストデータが入っているように作った。「テキスト」タブに切り替えると、グリッドの内容をHTMLにしたものを表示する。「ブラウザ」タブに切り替えるとWebブラウザ的な表示をする。グリッドとテキストのフォントは変更できる。ブラウザには「ズーム」というトラックバーがあり、拡大表示できる。スクロールバーも大きくなってしまう。この後、自分が読み込ませたいHTMLをインポートする機能を付ければ、目的は達成できるかなと思う。ここまで作る過程で、1日近く「はまった」のが、TWebBrowserExコンポーネントを使ってブラウザ表示を作るところであった。無償版のDelphiの場合、ツールパレットにこのコンポーネントがない。コードで生成し、イベントハンドラとの関連付けもコードで書く必要がある。Self.WbOnDocumentComplete;というコードを書いている。TWebBrowserExコンポーネントのインスタンスWbのOnDocumentCompleteイベントのハンドラとして、WbOnDocumentCompleteプロシジャ(メソッド)を割り当てるコードだ。ところがこれが、上の図にあるように、「型に互換性がありません。:パラメータリストが異なります」というエラーになってコンパイルできない。WbOnDocumentCompleteプロシジャの宣言はこんな風に書いていた。OleVariant);パラメータは3つである。これではダメだというのだ。ネットの記事はこうだとみんな書いている(本当に「みんな」ではないかもしれないが)。エンバカデロのドキュメントでもそうなっている。この図のリンクはこちら。それなのに、どうして型が合わない?ということで、猛烈に悩んだ。Trialをインストールしてみることにした。そちらなら、ツールパレットにTWebBrowserコンポーネントがあるのではないかと思ったからだ。OleVariantとなっていた。え?constなの?真似てみた。これで動きましたよ...。見ると、上のリファレンスは「2007」である。どこかで変えたな...。いうことで、ネットのコードは、役に立つことが多いけれど、はまることもある、というお話でした。現時点でのTableMakerはこちら。(月)Delphi:エディタの設定を変えるDelphiが懐かしい。これでちょっくら書いてみるか、と思うのだが、そうなると、やはりエディタの設定は変更したい。少ない手間で下のような感じにできた。「表示色のスピード設定」という項目があり、そこを「トワイライト」にすると黒バックになる。あとは、斜体がかかっているのをやめ、コンパイラ指令(だっけ?)が白バックになっているのを黒バックの赤紫字にし、フォントを14にすれば、上の感じになる。Delphiはもともとタブ幅が2なので、そこは設定する必要がない。私は、Delphiに慣れて、タブが4だと落ち着かないんだろう。あー、Delphiうれしい。Studio:コマンドラインでコンパイルする」に続いて、C++Builderでも同じようにコマンドラインコンパイルができるかどうかを試した。C言語のソースコードはその時と同じ。プロンプト」を起動し、上のコードを、C++Builderのbcc32コマンドでコンパイルして、実行したのが下の図。これもコードは前記事と同じである。0;}上のコードをbcc32コマンドでコンパイルして、実行したのが下の図。無償版のdcc32ではコマンドラインコンパイルができないらしい。以前試した時は、bcc32は動かなくて、別途ダウンロードしてインストールしたような記憶がある。その手間をなくしてくれたのだとすれば、うれしい。がんばれエンバカデロ。(0)C++Builder:VCLアプリケーションを作るC++BuilderでVCLアプリケーションを作れるかどうか試して、失敗した、というのは前記事に書いた通りである。悔しいので、とりあえず、C++Builderだけでいいからインストールして試してみることにした。C++Builder」を選ぶ。Delphiの時と手順はほとんど同じで、今度はビルドできた。書き足したコードは、Delphiの時とは少し違って、ShowMessage(”C++Builderでこんにちは!");である。Delphiのリテラル文字列はシングルクォートで囲むが、C++Builderはダブルクォートで囲む。下の図はプロジェクトを保存した様子。うまくできたのかどうか(名前が適切なのかどうか)は今ひとつわからない。今度は、Delphiのインストールだ。うまくいくかなぁ...。Library)アプリケーションを作ってみることにした。Interface)部品ライブラリだ。Delphi」を選ぶ。すると、開発環境の画面はこんな風になる。中央には、画面に相当する「フォーム」が出てくる。右下にある「ツールパレット」で部品を選び、それをフォームに貼り付けて(ドラッグ&ドロップして)画面を作る。下は、「Standard」の中にある「ボタン(TButton)」を選んだ様子。VCLのコンポーネント(部品)には、「T」で始まる名前が付けられている。ボタンをフォームに貼り付けると、下のようになる。貼り付けたボタンはマウスのドラッグで位置と大きさを変えられる。選択状態でDeleteキーを押せば削除できる。貼り付けたボタンをダブルクリックすると、ボタンのイベントハンドラ(デフォルトイベントのハンドラ)のコードが生成され、コードエディタでそれを編集可能な状態になる。ここでは、Button1Clickプロシジャ(procedure)にShowMessage('Delphiでこんにちは!');と記述している。ShowMessageはダイアログを出す関数(たぶん)。Delphiは大文字小文字を区別しないので、それを打ち分ける必要はないのだけれど、見やすさの点では打ち分けた方がきれいだと思う。リテラル文字列はシングルクォートで囲む。これで実行すると、ウィンドウが現れ、ボタンを押すとダイアログが現れる。その後、プロジェクトを保存すると、こんな感じにファイルができる。プロジェクトのフォルダーを作ったり、名前を付けたり、ちょっと面倒。やり方を忘れてしまったからであるけれども。続いてC++Builderでも同じことをやろうとして失敗。ビルドできないのである。その原因はおそらくこちら。インストールをやり直そうとしたが、これも失敗。今、仮想マシンのスナップショット(チェックポイント)を戻して、いろいろやっている。Edition」をインストールすることにした。作りたいソフトがあって、何で作ろうか考えたんだけど、やっぱり、VSかDelphiかな、ということで。Delphiはここ数年触っていなかったのですべてを忘れていると思うが、まあ、なんとかなるでしょう。こちらでDelphiをダウンロード。続いて、こちらでC++Builderをダウンロード。どちらも、同じインストーラをダウンロードする感じで、使ったのは一つだけ。ダウンロードして、電子メールでキー文字列を受け取る必要があるので、おそらく、両方のダウンロード手続きが必要だろうと思う。インストールを始める。途中でキーを入力する。SDKのインストールもある。Studioでインストールしたのとバージョンが違うかもしれないので、それも入れる。Studioが起動する。これだと、C++Builderのキーを入れてないぞ、ということで、どうやったらそれが入るのかを探す。ライセンス管理の画面にC++Builderのキーを登録してみた。これだけでC++Builderが使えるわけではないようで、よくわからないが、アンインストールしてインストールして、レジストリ情報を生かす、とかなんとかやっていたら、何とか、起動画面にDelphiとC++Builderの両方が現れた。IDEを起動してプロジェクトの新規作成、その他を見るとこんな風になっている。作れるかどうか、試さないとね。StudioにはC++のコマンドラインがなかったような気がするので、それは別途入れないといけないかも。最近のコメント最近のトラックバックRSSを表示する携帯URL携帯にURLを送る。