問題タブ [cocoa-sheet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
197 参照

objective-c - ココアゲットシート状態

シートの状態を判断する方法はありますか? 私はこのメソッドを呼び出すことができることを知っています:

しかし、私がやりたいことは次のようなものです:

私は自分のシートに NSPanel を使用しています。そのフレームを取得し、y の位置を確認してステータスを判断できると考えていましたが、これを行うための受け入れられた方法があるかどうかを確認したかったのです...

0 投票する
1 に答える
119 参照

cocoa - 窓に取り付けられていないシート開口部

初めて開いたときにウィンドウに接続されていない状態で開くシートに問題があります。それを却下した後、シートは正常に機能します。

これが私がシートを始めているコードです:

変数「window」および「editorController」は、アプリケーションデリゲートヘッダーファイルで@privateとして初期化されます。

'didEndSelector'は'editorController'コードファイルで定義され、ウィンドウが閉じられたときに呼び出されます。

'didEndSelector'のコードは次のとおりです。

ウィンドウは、次のようなセレクター'cancelButtonAction'の呼び出しでキャンセルされます。

どんな考えでもいただければ幸いです。

0 投票する
2 に答える
163 参照

objective-c - シートとして表示されるウィンドウのアルファを変更するには?

ココアでは、シートとして表示されるウィンドウのアルファを変更する方法を知っていますか? この関数でウィンドウを起動すると、アプリは常にウィンドウを半透明にします。それは望ましくありません。

いいえ、呼び出し[[awesomeFantasticWindow window] setAlphaValue:1.0]は機能しません

0 投票する
1 に答える
196 参照

objective-c - カスタム シートがフォーカスを奪わないようにする

Cocoa を使用してマルチドキュメント アプリケーションを作成しています。ユーザーはドキュメントを開くときにパスワードを入力する必要があります。ドキュメントでの操作がない状態が一定時間続くと、ユーザーはもう一度パスワードの入力を求められます。

現在、カスタム シートにパスワード プロンプトを表示するためにNSAplication'sを使用しています。beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:これは動作しますが、別のドキュメントが同時に作業されている場合でも、ウィンドウが最前面に移動され、フォーカスが与えられるという不幸な副作用があります。私のアプリケーションが前面にある場合にのみ問題になります。

親ウィンドウがアクティブでない場合に、シートを開いてフォーカスを奪わないようにする方法はありますか?

0 投票する
2 に答える
2264 参照

cocoa - Cocoa:NSApp beginSheetの結果、メインウィンドウが非表示になった後にエラーを表示する

私はこれを非常に小さなプロジェクトに分解しました。アプリケーションデリゲートで次のコードを使用します。

そして、次のアクションは、ウィンドウペン先のボタンに関連付けられています。(ペン先のウィンドウも起動時に表示されないように設定されていることに注意してください)。

実行するとonClose、すべてのウィンドウが消え、エラーダイアログだけが残ります(メインウィンドウが消えました)。メインウィンドウのないエラーダイアログ

私のコードに何か問題がありますか?メインウィンドウが消えるのはなぜですか?

注:presentErrorメソッドにエラーを渡していないことはわかっています。サンプルコードを書く時間が短かったので、意図的にこれをnullのままにしました。実際のエラーを渡すと、同じ動作になります。

サンプルプロジェクトはこちらから入手できます。

0 投票する
1 に答える
407 参照

xcode - シートのテキスト ラベルを変更できません

プログラムがデータを処理している間にさまざまなメッセージを表示したいシートを作成しました。シートは正しく開閉し、IB アウトレットを使用してメイン コントローラー (シートの所有者) に接続されているシートにテキスト ラベルがあります。

Nib は正しくロードされ、正しく開閉されますが、静的テキスト ラベルは更新されません。接続された IBOutlet は次のように定義されています。

シート上のテキストを変更しようとするために使用している呼び出しは次のとおりです。

この形式は、ラベルがメイン ウィンドウにある場合は正常に機能しますが、ラベルがシート上にある場合は何もしません。

IB のすべての接続は正しいようです。非常に単純なものが欠けていると確信しており、シートがメインウィンドウとは異なる「ウィンドウ」であるという事実と関係があると推測していますが、何も見つからないようですドキュメントで正しい方向に向けてください。

ちなみにシートのつなぎ方はこんな感じ…

...そしてそれを開いた:

何か案は?

* 編集 *

わかりましたので、私が部分的に正しいことがわかりました。テキスト値を読み取ろうとすると、正しいテキストに設定されていることがわかりますが、変更を表示するためにシートが更新されていません。ウィンドウに再描画するように指示する必要があると思います...これまでに行ったことはありません。ドキュメントに戻って、見つけられるかどうかを確認してください。呼び出す方法を知っている人がいたら教えてください。:) ありがとう!

0 投票する
1 に答える
850 参照

objective-c - beginSheet modalForwindow: nil 位置?

私は方法を理解しようとしています

ウィンドウがない場合はモーダルであるため、ウィンドウ上の位置を選択しますか? ( nil`modalForWindow に渡しました:)

最初の位置は、Interface Builder で定義された位置です。初めて閉じたら、再度開くたびに、画面の上半分の中央に表示されます。常に同じポジションで開くことはできませんか?

どうも

0 投票する
3 に答える
6578 参照

cocoa - モーダル セッションにはモーダル ウィンドウが必要です

ツールバーの下に表示されるように、シートのようなウィンドウを開こうとしています。これを行うために、O'Reilly チュートリアルを使用しました。ただし、このエラーを回避できます: モーダル セッションにはモーダル ウィンドウが必要です。

「Visible At Launch」がチェックされている場合、ウィンドウはウィンドウとしてロードされます。

チェックされているかどうかにかかわらず、「モーダルセッションにはモーダルウィンドウが必要です」というエラーが表示されます。

Window.xib、ProgressModal.xib があります。

私が使用するウィンドウ実装ファイルでは:

ProgressModal.xib の設定が間違っている可能性があります。クラスとして「ウィンドウ」を持つ NSObject があります。すべてのつながりはそれを通して作られています。

ただし、ウィンドウをロードしてもモーダルとしてロードされません。

何か案は?

0 投票する
1 に答える
386 参照

macos - NSWindow をツールバー シートとして表示

NSWindow下の図のように、ツールバーからをどのように表示しNSOpenPanelますか?

ここに画像の説明を入力

0 投票する
1 に答える
132 参照

cocoa - NSFormがカスタムシートから消える

カスタムシートを作成しましたが、必要に応じて表示/非表示になります。ただし、シートには、自動セルサイズ変更を無効にすると消えるNSFormが含まれています。

「セルサイズの自動再計算」を有効にすると、フォームは表示されますが、フォームのセルのサイズが適切に設定されていません。

誰かが以前にこの問題を抱えたことはありますか?