前回とりあげたCarbonLibの「謎」に関して、読者のみなさんから解決策が寄せられております!!ぜひ参考にしてみてください。
--------【解決方法】--------
その後、Applicationメニューの「環境設定...」アイテムに関しては、EnableMenuItem()ではなくて、EnableMenuCommand()を利用すればハイライトを解除できることが分かりました。こんな感じですね...。
EnableMenuCommand( GetMenuRef(128 ), 'pref' );
ダイアログ表示はCarbon Eventのハイコマンド用Handlerルーチンで処理すればOKです。この件に関しては何人もの方からご連絡をいただきました。本当にありがとうございました!
--------【解決方法】--------
こちらに関しても、読者のゆうたさんを含め多くの方から解決方法が届きました。NavDialogCreationOptions構造体のmodalityメンバーにkWindowModalityWindowModal(定数)をセットする必要があるようです。ファイル名が正しく保存できなくなったのは、NavDialogGetSaveFileName()で得たファイル名を、CFStringGetPascalString()を使いFSSpecのnameメンバーに(初期値NULL)に設定しなければいけないためのようです。
ファイル名がUnicode対応になったため、色々と面倒になっているようです。詳しくは「CarbonLib 1.3.1 SDK」に含まれている「NavSample」を参照してみてください。
ゆうたさん、みなさん、ありがとうございました!
---------------------------
それ以外の「謎」に関しても、解決方法を募集しております(笑)よろしくお願い致します
copyright 2001 Ottimo, Inc. All rights reserved
無断転載・引用禁止
Contact Us: koike@ottimo.co.jp