Hallo,
ich habe eine App welche ein Window auf einem zweiten Monitor anzeigt - das ScoreBoard. Nun will ich einen Timer anzeigen, der von 60 im Sekundentakt runter zählt. Allerdings wird dieser Timer nicht immer benötigt.
Nun möchte ich den Timer als NSPanel realisieren, das als Child-Window dem ScoreBoard zugeordnet ist.
Jetzt habe ich damit schon mit NSPanel und Child-Window experimentiert. Nur bekomme ich das Child-Window nicht so platziert, dass es in der rechten unteren Ecke des ScoreBoards angezeigt wird.
So habe ich es versucht, nur es ist mehr ein Zufalls-Ort an dem das Panel erscheint.
So wird das Child-Window sichtbar ...
und so verschwindet es wieder.
Wie kann ich das NSPanel exakt platzieren?
ich habe eine App welche ein Window auf einem zweiten Monitor anzeigt - das ScoreBoard. Nun will ich einen Timer anzeigen, der von 60 im Sekundentakt runter zählt. Allerdings wird dieser Timer nicht immer benötigt.
Nun möchte ich den Timer als NSPanel realisieren, das als Child-Window dem ScoreBoard zugeordnet ist.
Jetzt habe ich damit schon mit NSPanel und Child-Window experimentiert. Nur bekomme ich das Child-Window nicht so platziert, dass es in der rechten unteren Ecke des ScoreBoards angezeigt wird.
So habe ich es versucht, nur es ist mehr ein Zufalls-Ort an dem das Panel erscheint.
Quellcode
- NSRect windowRect = self.window.frame;
- NSRect panelRect = self.timerPanel.frame;
- panelRect.origin.x = windowRect.origin.x + (windowRect.size.width - panelRect.size.width);
- panelRect.origin.y = windowRect.origin.y;
- [self.timerPanel setFrameOrigin:panelRect.origin];
- self.timerPanel.floatingPanel = YES;
- [self.window addChildWindow:self.timerPanel
- ordered:NSWindowAbove];
So wird das Child-Window sichtbar ...
und so verschwindet es wieder.
Wie kann ich das NSPanel exakt platzieren?
Wenn Du immer nur das tust was du schon kannst - wirst du immer das bleiben, was du heute bist.