JvPlugInはDLL側からホストアプリケーションのコンポーネントを参照し、キャストする。
PKGタイプにするとDelphiのシステムディレクトリにBPLができてしまう。
Delphiの最近のブログ記事
ようやっとDelphi2009の頼りになりそうな本が発売されます。
DELPHI2009HANDBOOK―Delphi最新プログラミングエッセンス
監修はもちろんエンバカデロ・テクノロジーズ。
著者のMarco Cantuさんはインプレスから発売されていたDelphi 6 プログラミングバイブル の作者で有名です。
(この本にもお世話になりました)
さて、DELPHI2009 HANDBOOKはやはり文字コードの話題が豊富。
標準文字列がUniCode化されたことで各地で喜びとともに混乱が起きていますが、私のソフトでもけっこうな修正作業をしています。
特に外部DLLやWindowsAPIを使う部分で動かない、動きがおかしい、エラーが起こるなどの現象が起きます。
いままで以上に文字コードを意識しなければなりませんね。
時代の流れだと思いましょう。
いずれはUniCodeで統一されて、文字コードというものを意識せずにアクセスできるようになると幸せですね。
もくじは以下のとおり。
| 第I部 Unicode 第1章 Unicodeとは? 第2章 UnicodeString型 第3章 Unicodeへのポーティング 第II部 Delphi 2009とそのコンパイラ 第5章 ジェネリクス 第6章 無名メソッド 第7章 その他の言語およびRTLの変更 第III部 VCLとデータベース 第9章 Delphi 2009におけるCOMサポート 第10章 リボンコントロール 第11章 データセットとdbExpress 第12章 DataSnap 2009 |
前回まででアプリケーションメニューの作り方がわかりました。
今回は「オプションアイテム」というアプリケーションメニューの下につく「終了」などのボタンを作ってみます。
オプションアイテムを作る
Ribbon1を選択します。
今回はオブジェクトインスペクタで作業します。
その下にある「Menu」を展開します。
さらにその中。
「OptionItems」を探します。
ありましたか?
そうしたら、横の「...」ボタンを押します。
こんなウィンドウが開きます。
左の新規追加をクリックすると、TOptionItemが追加されます。
TOptionItemにアクションを割り当てます
「0-TOptionItem」を選択し、オブジェクトインスペクタに戻ります。
その中にActionという項目があるのを確認します。
右の下三角「▼」を押します。
今回はFileExit1を選択します。
割り当てられました。
では、もう一度アプリケーションメニューを開いてみます。
右下に終了ボタンが追加されました。
これがオプションメニューです。
次はクイックツールバーを作成してみましょう。
前回まででリボンメニューの基本的なベース、項目を設置するところまで説明できました。
次はちょっとクセのあるアプリケーションメニューです。
アプリケーションメニューを作る
アプリケーションメニューはコンポーネントパレットにはありません。どこから作るのでしょうか?
それはTRibbonの中で作ります。
まずTRibbonを右クリックします。
ここで間違えてはいけないのは、リボンのグループなどの上で右クリックしないことです。
Ribbon1というキャプションの部分で右クリックするとよいでしょう。
アプリケーションメニューの追加をクリックします。
リボンメニューの左側に丸いアイコンが現れました。
これがアプリケーションメニューです。
アイコンを押すとこんなメニューも開きます。
アプリケーションメニューに項目を追加する
次にこの中にも終了ボタンを入れてみましょう。
再びアクションマネージャを開きます。
開くアクションをドラッグします
開くアクションをドラッグして、左の丸いアイコンに重ねると・・・
![]()
メニューが降りてきました。
そして左のフレームにずらしていくと、このような黒い線が現れます。これでドロップします。
見事に追加されました。
テストしてみましょう
アプリケーションメニューを試してみましょう。
F9を押して実行します。
![]()
おお!さっきの味気ないガラスのようなアイコンにアプリケーションのアイコンが入り込んでいます!
なんかそれらしくなってきました。
終了ボタンで終了させます。
ボタン配置の前に必要なことがあります
リボンへメニューやボタンを配置するには通常のTButtonではできません。操作するオブジェクトはすべてTActionからの派生になります。
といっても難しいコーディングは不要です。(このあたりさすがDelphi)
まずはアクションを統合的に管理するコンポーネントTActionManagerをフォームに作ります。
Additionalグループに入っています。
Delphi2009からはコンポーネントを名前で探せるのでいいですね。
ドロップするとこのようになります。
アクションを作ります
フォームにあるActionManager1をダブルクリックします。
すると、アクションの設定フォームが現れます。
左にはカテゴリ(主メニュー)
右にアクション項目が入っていきます。
テストのアクションを作ります
アクションのワクで右クリックします。
出てくるメニューの「標準アクションの新規作成」をクリックします。
これはよく使う「ファイルを開く」や「終了」などのメニュー項目をぱっと作ってくれる非常にありがたい機能です。
出てきたウィンドウから
TFileOpenとTFileExitを選びましょう。
TFileOpenを選択し、Ctrlを押しながらTFileExitをクリックすれば同時に2つ作れます。
開くアクションと終了アクションができました
項目の名前だけを作ってくれると思ったら大間違い。
じつはこの2つ、もう基本的な機能を備えているのです。
つまり、終了を設置すれば、ノンコーディングでアプリケーションの終了を実現できるのです!!
すげ~~~~
終了ボタンを設置してみます
アクションマネージャはまだ開いていますか?
もし閉じてしまった場合は開いてください。
先ほど作った終了アクションをドラッグし、リボンのグループパネルへドロップします。
テストしてみます
じつはここまでの操作ですでに終了ボタンは動くのです。
さっそくためしましょう。
F9を押し、実行します。
おおっ!
動きますね~
もちろんクリックすればアプリケーションは終了します。



「読む・書く・話す」を一瞬でモノにする技術


最近のコメント