2011-08-13 7 views
0

私のアプリのメインGUIには、独自のコントローラクラスによって制御されるNSTableViewがあります。このクラスは、プロセスの出力を起動し解析することによって、データを一度テーブルにロードします。これは、コントローラクラスの方法でNSTableView保証データ表示

-(void)awakeFromNib 

の方法で行われます。表は起動時に表示されるため、GUIが表示される前にプロセス出力の解析を行う必要があります。

今の問題は、GUIが(私のアプリの起動プロセスが開始されていることを意味し、遅いです)表示されたとき、テーブルは時々空であるか、時々データがロードされていることです。これはランダムです。 スタートアップ時にデータが常にロードされるようにするにはどうすればよいですか?

reloadDataは動作しません!そして私はまた、このウィンドウが表示さの前に、私はしばしば「完全ロード」アプリを作る方法です[NSTask waitUntilExit];

+0

データをテーブルにバインディングや委任によってどのように提供しているか説明できますか? –

+0

代表団 - データソース – yolo

答えて

1

使用:

チェックを外しをInterface Builderであなたの窓のための「起動時に見えます」。次に、AppDelegateにIBOutlet NSWindow *window;を作成します。最後に、AppDelegateでapplicationDidFinishLaunching:メソッドを実装し、[window makeKeyAndOrderFront:self];をこのメソッドに追加します。

applicationDidFinishLaunching:は常にawakeFromNib後に呼び出されますので、これは、動作するはずです。

+0

いいえ!突然私は私のアプリを再テストし、それは動作していない - まだ空のテーブルはランダムに(私は今このメソッドを使用して、ウィンドウを表示して確認した) – yolo

+0

makeKeyAndOrderFrontはあなたがapplicationDidFinishLaunchingで最後にすることは確かですか?また、makeKeyAndOrderFrontを取り除くと、ウィンドウは表示されなくなりますか?その後、私は何が起こっているか見当がつかない怖いmakeKeyAndOrderFront' 'なしで表示されdoesntの窓 – Enchilada

+0

(だけ。あなたが他の場所を示すいくつかのウィンドウに潜入場合には、確認する)、これはapplicationDidFinishLaunching – yolo

関連する問題