Qt를 사용하여 스크린 샷을 찍고 있습니다 (스크린 인쇄).GUI를 표시하지 않고 백그라운드에서 응용 프로그램을 시작할 수 있습니까?
QPixmap::grabWindow(QApplication::desktop()->winId());
나는 즉, 백그라운드에서 시작하는 응용 프로그램을 싶습니다가 시작 (또는 콘솔 모드에서 실행) 때 나는 그것이 숨길 수 싶습니다.
Qt에서 어떻게 할 수 있습니까?
Qt를 사용하여 스크린 샷을 찍고 있습니다 (스크린 인쇄).GUI를 표시하지 않고 백그라운드에서 응용 프로그램을 시작할 수 있습니까?
QPixmap::grabWindow(QApplication::desktop()->winId());
나는 즉, 백그라운드에서 시작하는 응용 프로그램을 싶습니다가 시작 (또는 콘솔 모드에서 실행) 때 나는 그것이 숨길 수 싶습니다.
Qt에서 어떻게 할 수 있습니까?
나는 당신의 문제를 제대로 이해한다고 생각합니다.
(내가 아는 한 :
) 앱을 실행하면 위젯이 표시되지 않고 백그라운드에서 실행되는 앱이 필요합니다.
이 작업을 수행하려면 응용 프로그램이 실행될 때 시스템 트레이에 아이콘이 나타나고 대화 상자/양식/창이 화면에 표시되지 않는 시스템 트레이 접근 방식을 사용해보십시오. 앱을 실행하면 지금 당신은 다음과 같은 코드를 사용할 수 있습니다
[MAIN.CPP]
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// this is the important bit
app.setQuitOnLastWindowClosed(false);
Class object;
// do not call object.show()
// but do remember to setup and invoke
// system tray icon in the constructor
return app.exec();
}
은 물론 설정하는 다른 많은 것들이 있고, 그들을 위해 내가 당신을 조언 것 System Tray Icon Example을 참조하십시오. 가장 중요한 점은이 방법을 따르면 앱이 실행되지만 화면에 아무 것도 표시되지 않는다는 것입니다. 이 후
앱을 호출 할 수있는 방법을 찾고 있다면 - 다음 앱을 제공하기에 더 깊이 볼 수있는 글로벌 지름길 Qxt의 QxtGlobalShortcut 클래스를 사용하여 달성 할 수을.나는이 문제를 올바르게 이해하고 적절한 해결책을 제공했으면 좋겠다.
내가 올바른 방향으로 가고 있는지 아닌지에 대해 의견을주십시오.
Qt 콘솔 응용 프로그램으로 시작할 수 있습니다.
헤더에 <GtGui>
을 포함해야합니다.
, 당신의 .PRO 파일을 엽니 다 내가 대신의 QApplication의 QCoreApplication를 사용하는 것이 좋습니다 -= gui
내 프로 파일 당신이 창문을보고 싶지 않아 그렇지 않은 경우 – user63898
은 다음 을 'QT + = GUI'를 추가 할 수 있습니다이 CONFIG + = QT 콘솔 QT + = 코어 네트워크처럼 보인다 원하는 해달라고 'hide()'그것 – shader
mybe 때문에 내 응용 프로그램에 내재 된 public QWidget 하지만 Qt funtions를 사용하기 위해 어딘가에서 내재해야합니다. hide()는 올바른 방법입니다 .. 그 나던 것은 보이지 않습니다. .. 내 느낌이 딱 맞습니다. – user63898
으로 라인 제거 :
그런데// main.cpp
#include <QCoreApplication>
int main(int argc, char* argv[])
{
QCoreApplication app(argc, argv);
// ...
return app.exec();
}
, 당신이 QtCreator에서 콘솔 응용 프로그램을 선택할 수 있습니다,하지만 난 항상 빈 프로젝트를 사용하십시오.
"GUI를 사용하지 않고"는 무엇을 의미합니까? GUI 라이브러리를 포함하고 싶지 않습니까? 창을 보이지 않습니까? 응용 프로그램을 작업 표시 줄에 숨기시겠습니까? – strager
표시 할 창을 표시하지 마십시오. 이제 애플리케이션을 실행할 때마다이 창이 표시됩니다. 난 당신이 할 수있는, – user63898