1
가 여기 내 .mm 파일 링커는 저를 말하고있다Qt의 Mac OS X 링커 오류입니다. 있는 CoreGraphics & CGWindowListCreate
#include "windowmanagerutils.h"
#ifdef Q_OS_MAC
#import </System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreGraphics.framework/Headers/CGWindow.h>
QRect WindowManagerUtils::getWindowRect(WId windowId)
{
CFArrayRef windows = CGWindowListCreate(kCGWindowListOptionOnScreenOnly, kCGNullWindowID);
return QRect();
}
QRect WindowManagerUtils::getClientRect(WId windowId)
{
return QRect();
}
QString WindowManagerUtils::getWindowText(WId windowId)
{
return QString();
}
WId WindowManagerUtils::rootWindow()
{
QApplication::desktop()->winId();
}
WId WindowManagerUtils::windowFromPoint(const QPoint &p, WId parent, bool(*filterFunction)(WId))
{
return NULL;
}
void WindowManagerUtils::setTopMostCarbon(const QWidget *const window, bool topMost)
{
if (!window)
{
return;
}
// Find a Cocoa equivalent for this Carbon function
// [DllImport("/System/Library/Frameworks/Carbon.framework/Versions/Current/Carbon")]
// OSStatus ret = HIViewSetZOrder(this->winId(), kHIViewZOrderAbove, NULL);
}
#endif
이다 "_CGWindowListCreate는"정의되지 않습니다. 어떤 라이브러리에 링크해야합니까? Apple의 문서는 MSDN과 같이 포함 시키거나 연결할 내용을 알려주는 데별로 도움이되지 않습니다. 또한 나는 단지 #import <CGWindow.h>
을 할 수 없었고, 절대 경로를 지정해야만했다.
오타가 수정되었습니다. 그것을 발견해 주셔서 감사합니다. –
모든 도움을 주셔서 감사합니다. 내 .pro 파일에'mac : LIBS + = -framework ApplicationServices' 및 내 .mm 파일에있는'#import '를 배치하여 ApplicationServices에 연결할 수있었습니다. –