Hey,
ich bin Xcode Anfänger und kämpfe mich jetzt schon ein paar Tagen herum wie ich mein NSWindow Subclassen kann. Grund dafür ist das ich ein Fullscreen App gebaut habe wobei das Fenster erstelle. Zusätzlich hab ich noch ein WebView eingebaut, jedoch habe ich nun das Problem das ein NSBorderlessWindowMask kein Main bzw KeyWindow ist, somit sind auch alle Eingabegeräte geblockt... ich weis zwar das ich diese mit: wieder zum leben erwecken kann, jedoch in der Doku steht etwas von NSWindow Subclassen, wobei ich aber nicht weis wie das jetzt genau funktioniert, kann mir da jemand ein Tutorial geben, das ich mal nachmachen / bauen kann um das zu verstehen... Learning by Doing ist bei das beste zu verstehen als in Bücher zu kramen...
hier mal mein Code:
.h
Alles anzeigen
dann das .m
Alles anzeigen
Dann hab ich noch eine weitere Class angelegt: ActiveView die ich im IB als Class für das Fenster eingetragen habe.
ActiveView.h
ActiveView.m
Alles anzeigen
Funktionieren tut das jedoch nicht, das Window bleibt eingefrohren ohne Keydown funktion...
Über stümperhafte Antworten in anderen Foren durfte ich mich schon freuen, daher hoffe ich das sich hier vl. jemand etwas zeit für mich nimmt...
greetz Noli
ich bin Xcode Anfänger und kämpfe mich jetzt schon ein paar Tagen herum wie ich mein NSWindow Subclassen kann. Grund dafür ist das ich ein Fullscreen App gebaut habe wobei das Fenster erstelle. Zusätzlich hab ich noch ein WebView eingebaut, jedoch habe ich nun das Problem das ein NSBorderlessWindowMask kein Main bzw KeyWindow ist, somit sind auch alle Eingabegeräte geblockt... ich weis zwar das ich diese mit: wieder zum leben erwecken kann, jedoch in der Doku steht etwas von NSWindow Subclassen, wobei ich aber nicht weis wie das jetzt genau funktioniert, kann mir da jemand ein Tutorial geben, das ich mal nachmachen / bauen kann um das zu verstehen... Learning by Doing ist bei das beste zu verstehen als in Bücher zu kramen...
hier mal mein Code:
.h
Quellcode
dann das .m
Quellcode
- #import "TimeWarpAppDelegate.h"
- @implementation TimeWarpAppDelegate
- @synthesize window;
- - (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
- // Insert code here to initialize your application
- [webview setDrawsBackground:NO];
- [window orderOut:self];
- NSRect screenRect = [[NSScreen mainScreen] frame];
- NSView * iv = [window contentView];
- self.window = [[NSWindow alloc] initWithContentRect:screenRect
- //styleMask:NSTitledWindowMask
- styleMask:NSBorderlessWindowMask
- //styleMask:(NSUInteger)windowStyle
- backing:NSBackingStoreBuffered
- defer:NO screen:[NSScreen mainScreen]];
- [self.window setContentView:iv];
- [self.window setLevel:CGShieldingWindowLevel()];
- [self.window makeKeyAndOrderFront:self];
- NSURL*url=[NSURL URLWithString:@"http://localhost/"];
- NSURLRequest*request=[NSURLRequest requestWithURL:url];
- [[webview mainFrame] loadRequest:request];
- }
- @end
Dann hab ich noch eine weitere Class angelegt: ActiveView die ich im IB als Class für das Fenster eingetragen habe.
ActiveView.h
ActiveView.m
Quellcode
Funktionieren tut das jedoch nicht, das Window bleibt eingefrohren ohne Keydown funktion...
Über stümperhafte Antworten in anderen Foren durfte ich mich schon freuen, daher hoffe ich das sich hier vl. jemand etwas zeit für mich nimmt...
greetz Noli