Я пытаюсь создать HUD, который является NSPanel в Qt. Я использую QMacCocoaViewContainer, как это предлагается в документации qt.Окно Mac HUD в Qt
В HUD.h
#import <QWidget>
#import <QMacCocoaViewContainer>
class HUD : public QMacCocoaViewContainer
{
public:
HUD(QWidget* parent);
};
В HUD.mm
#import "HUD.h"
#import <Cocoa/Cocoa.h>
HUD::HUD(QWidget* parent) : QMacCocoaViewContainer(0,parent)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSPanel *panel = [[NSPanel alloc] initWithContentRect: NSRectFromCGRect(CGRectMake(0,0,250,250))
styleMask:NSHUDWindowMask | NSTitledWindowMask | NSUtilityWindowMask
backing:NSBackingStoreBuffered
defer:YES
screen:[[NSApp mainWindow] screen]];
setCocoaView(panel);
[panel release];
[pool release];
}
Каждый раз, когда я запускаю его, однако я получаю сообщение об ошибке говорящее [окно NSPanel]: непризнанные селектор направил к экземпляру 0x21231f0. Неужели кому-то удавалось смешивать Qt и Cocoa? Какие трюки вы использовали, чтобы заставить его работать?