Objective C++ を使用して C++ コンストラクターから Nib をロードしようとしています。コードをまとめるのに十分な例を検索して見つけましたが、ウィンドウが表示されません。または、そのことについては任意のウィンドウ。
コンストラクターの例を次に示します。
JokeSystem::JokeSystem() : fileSystem("/Library/Application Support/Jokes/")
{
try
{
randSystem = new RandSelect<std::string>
(fileSystem.getAllFileContents("%\n"));
}
catch (std::ifstream::failure)
{
NSWindowController * errorWindowControl = [[NSWindowController alloc]
initWithWindowNibName:@"ErrorWindow"];
[errorWindowControl showWindow: nil];
}
}
コンストラクターの目的は、ディレクトリの内容を文字列にロードすることです。私がやろうとしているのは、ファイルを開くことができないときにエラー ウィンドウを表示することです。
ErrorWindow.nib には、[OK] ボタンとエラー用の a を備えた 1 つのウィンドウがあります。ペン先にNSTextView
a を設定し、それをウィンドウに接続しました。NSWindowController
私の唯一のリンクは、ほとんどの例がこれを示しているということ[errorWindowControl showWindow: self]
です。ではなく、showWindow: nil
これは C++ コンストラクターであるため、私は持ってself
おらthis
ず、機能しません。
重要な場合、このコンストラクターはのプライマリのawakeFromNib
メソッドから呼び出されます。MainMenu.nib
NSObject
ありがとう