Frage

Ich möchte ein Nsalert mit grundsätzlich einer Zubehöransicht anzeigen.Die Zubehöransicht muss haben:

1) NSTEXView zum Anzeigen von obligatorischen Inhalten

2) Disclosure-Taste mit NSTExtView

Die Offenlegungsknopf ist erforderlich, um die zweite NSTExtView auszublenden und anzuzeigen.Gleichzeitig möchte ich jedoch, dass der NSALERT-Dialog-Dialog auf die Größe, um den Inhalt zu empfangen und anzupassen. Das Dialogfeld "Speichern in Kakao hat einen Offenlegungsknopf, der grundsätzlich dies tut, und ich möchte die gleiche Funktionalität mit NSAlert. Vorschläge?

War es hilfreich?

Lösung

Here you go:

1) NSAlert has a window property. Hence use that.

2) Create a custom accessory view containing two NSTextView's and a disclosure triangle

3) Set this custom view as accessory view of NSAlert

4) Before displaying the alert, set the window property of NSAlert in your custom view (This way you will have access to NSAlert's window when you click disclosure triangle)

5) Add target for the disclosure button event and save the state (expanded/collapsed)

6) In the event for disclosure triangle click: Use NSAlert's saved window frame to adjust the height, size and width of NSAlert.

7) Important here is to note that - when you adjust the height, NSAlert grows from top hence you will be required to move the "origin" accordingly.

Hope this helps :). I had to spend entire weekend to figure out how to do this :D. BTW, just out of curiosity which project or company are you working on?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top