2016-09-01 9 views
3

데스크톱 환경의 특정 부분 (주로 QCursor를 사용하는 마우스)과 상호 작용하는 OS X에서 콘솔 응용 프로그램을 만들고있어 QCoreApplication을 사용할 수 없습니다 (원하는만큼).QApplication이 도크에 나타나지 않게하려면 어떻게해야합니까?

응용 프로그램이 정상적으로 작동하며, 명령 줄에서 실행할 때마다 도크에 표시됩니다. 온라인에서 몇 가지 다른 질문을 살펴 보았지만 문제가 해결되지 않았습니다.

나는 QSystemTrayIcon을 들여다 보았다. 팝업이 뜨면 성가신 창을 없애면 좋을 것이다. 여기 내 코드가 위에서 언급 한 문제가있는 최소값으로 좁혀졌습니다.

.PRO :

TARGET = project 

QT += core 
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 
QT -= gui 

CONFIG += c++11 
CONFIG += console 
CONFIG -= app_bundle 
TEMPLATE = app 

SOURCES += main.cpp 

MAIN.CPP : 여기 설명으로

#include <QApplication> 

int main(int argc, char *argv[]) 
{ 
    QApplication a(argc, argv); 
    QCursor cur; 
    cur.setPos(0,0); 

    return a.exec(); 
} 
+0

이 Qt5 @ 리눅스 사용하여 문제를 재현 할 수 없습니다. 귀하의 코드는 커서를 (0,0)으로 설정하지 않고 수동으로 멈출 때까지'a.exec'를 계속 실행합니다. – Sergey

+0

@ Sergey Huh. 그것은 나를위한 창이 열립니다 ... –

+1

@FlareCat 어때 [수동으로 숨기기] (http://www.macosxtips.co.uk/index_files/disable-the-dock-icon-for-any-application.php) ? –

답변

2

이 해결 방법은 수동으로 일을하고있을 것입니다.

다행히 코코아 응용 프로그램 인 경우 Dock 아이콘을 직접 숨길 수 있습니다. 가능한지 확인하려면 응용 프로그램 아이콘을 마우스 오른쪽 단추로 클릭하십시오 (Control 키를 누른 상태에서 클릭). 표시되는 메뉴에 "패키지 내용보기"가 있으면 Dock에서 아이콘을 숨길 수 있습니다.

이 경우, "패키지 내용 표시"를 선택하고 Contents 폴더에서 "Info.plist" 파일을 찾으십시오. TextEdit을 마우스 오른쪽 버튼으로 클릭하고 메뉴에서 "Open With - Other"를 선택하여이 파일을 엽니 다. 파일

<key>LSUIElement</key> 
<string>1</string> 

저장하고 닫습니다 :

는 파일에서 여섯 번째 줄에 바로 뒤에 다음 두 줄을 붙여 넣습니다. 변경 사항을 적용하려면 응용 프로그램을 바탕 화면으로 옮기고 원래 위치로 되돌려 야합니다 (OS X은 파일의 캐시를 유지하므로 다시 확인하도록 속여야합니다).

이제 응용 프로그램을 열면 Dock에 아이콘이 표시되지 않습니다.

출처 : http://www.macosxtips.co.uk/index_files/disable-the-dock-icon-for-any-application.php