2011-11-10 277 views
2

是否可以將窗口大小設置爲大於屏幕大小?我打開文本編輯例如我用的是以下幾點:設置窗口大於屏幕大小

set bounds of window 1 to {10, 10, 400, 2200} 

但高度永遠不會到達2200馬克。它僅限於屏幕尺寸。我希望我可以強制超過屏幕尺寸的高度,以便我可以截圖全長窗口。

高興地嘗試其他語言,這將工作英寸也許objective-c,可可應用程序?

+0

這是幹什麼用的? – gadgetmo

回答

1

是的,這是可能的。

#include <Foundation/Foundation.h> 
#include <AppKit/AppKit.h> 

@interface MyDelegate : NSObject 
{ 
    NSWindow *myWindow; 
} 
- (void) createMenu; 
- (void) createWindow; 
- (void) applicationWillFinishLaunching: (NSNotification *)not; 
- (void) applicationDidFinishLaunching: (NSNotification *)not; 
@end 

@implementation MyDelegate : NSObject 
- (void) dealloc 
{ 
    [myWindow release]; 
} 

- (void) createMenu 
{ 
    NSMenu *menu; 

    menu = [[NSMenu new] autorelease]; 

    [menu addItemWithTitle: @"Quit" 
     action: @selector (terminate:) 
     keyEquivalent: @"q"]; 

    [NSApp setMainMenu: menu]; 
} 

- (void) createWindow 
{ 
    NSRect rect = NSMakeRect (100, 100, 2000, 2000); 
    unsigned int styleMask = NSTitledWindowMask 
          | NSMiniaturizableWindowMask; 


    myWindow = [NSWindow alloc]; 
    myWindow = [myWindow initWithContentRect: rect 
         styleMask: styleMask 
         backing: NSBackingStoreBuffered 
         defer: NO]; 
    [myWindow setTitle: @"This is a test window"]; 
} 

- (void) applicationWillFinishLaunching: (NSNotification *)not 
{ 
    [self createMenu]; 
    [self createWindow]; 
} 

- (void) applicationDidFinishLaunching: (NSNotification *)not; 
{ 
    [myWindow makeKeyAndOrderFront: nil]; 
} 
@end 

int main (int argc, const char **argv) 
{ 
    [NSApplication sharedApplication]; 
    [NSApp setDelegate: [MyDelegate new]]; 

    return NSApplicationMain (argc, argv); 
} 
+0

這是否適用於TextEdit應用程序?我沒有創建自己的窗口 - 我正在啓動具有窗口的應用程序。請看我對Oliver的評論。 – Abs

+0

請注意,任何帶有標題欄的NSWindow都會自動將自己限制在屏幕上(來自Window編程指南)。 –

+0

我沒有使用NSWindow,並且我沒有那種級別的窗口控制 - 正如我前面提到的。我正在打開其他應用程序並嘗試將窗口高度增加到屏幕外。 – Abs

1

爲什麼你想這樣做?如果你想顯示的東西,比窗口大,你有UIScrollView的爲:

http://developer.apple.com/library/IOs/#documentation/UIKit/Reference/UIScrollView_Class/Reference/UIScrollView.html

使用它,並調整它的contentSize至{10,10,400,2200}。
你完成了。

+0

這不是我創建的窗口。此窗口屬於另一個應用程序。例如'TextEdit'應用程序,我打開它並設置窗口大小。但是,我想把它做得足夠大,以便我可以將窗口捕捉爲圖像。一切正常,但我似乎無法找到使窗口足夠大的方法。 – Abs

+0

@Abs:你也許可以嘗試調整其視圖/子視圖大小而不是窗口大小? – Oliver

+0

感謝您的回覆奧利弗 - 我該怎麼做?在蘋果中有什麼東西來瞄準這個? – Abs

0

您可以編輯筆尖文件併爲窗口設置不同的最小尺寸。應用程序爲其窗口設置最小尺寸以防止自動調整問題,這可能會導致某些視圖消失,並且在窗口大小放大時不顯示。從我收集的信息看來,您無法從AppleScript查詢或設置最小大小。

Here是一個類似於你的問題,從來沒有找到答案,但問題的評論和答案一樣好。

相關問題