월 22,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결Qt 6 프로그래밍 2편
Android 폰에서 개발환경 설정과 예제 App 구현 질문드립니다.
Android 폰에서 개발환경 설정과 예제 App 빌드 시 에러 발생으로 질문 드립니다.직접 프로젝트를 만들어도, 첨부해주신 analogclock 프로젝트를 다운받아서 해도 동일한 에러가 계속 발생합니다.JDK(jdk-21), SDK(12.0), NDK(21.4.7075529) 버전이고,Android는 티라미슈(13) 입니다. 강의에 나온 것처럼 SDK Platform 설치 했으며명령 프롬프트에서 adb.exe devices 쳤을 때 확인도 됩니다.위와 같은 에러 발생 시 더 확인할 사항이 있는지 알려주시면 감사하겠습니다.
- 미해결Qt 6 프로그래밍 2편
'Re-entrancy를 만족하는 Thread 예제 구현' 에서 질문있습니다.
안녕하세요. 수업내용과 약간 결이 다른 질문인데 궁금해서 질문 남깁니다.'Re-entrancy를 만족하는 Thread 예제 구현' 에서 11분정도 됐을 때 numUsed가 0만 찍히는 출력 결과를 보여주셨습니다.sleep으로 쓰레드를 멈추면 시간 차이가 큰 것 같아서 msleep, usleep으로 해도 동일하고, mutex로 lock-unlock을 해도 동일하게 0으로 출력 되더라구요. 출력창에 0만 출력되는 다른 이유가 있나요?#include <QCoreApplication> #include <QThread> #include <QMutex> #include <QWaitCondition> #include <QDebug> int number = 0; QMutex mutex; class ThreadA : public QThread { public: ThreadA() {}; protected: virtual void run() { for (int i = 0; i < 10; ++i) { // sleep(1); // msleep(1); usleep(1); mutex.lock(); number++; mutex.unlock(); } }; }; class ThreadB : public QThread { public: ThreadB() {}; protected: virtual void run() { for (int i = 0; i < 10; ++i) { mutex.lock(); qDebug() << "number: " << number; mutex.unlock(); } }; }; int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); ThreadA threadA; ThreadB threadB; threadA.start(); threadB.start(); threadA.wait(); threadB.wait(); return a.exec(); } 제가 만들어본 코드입니다.
- 미해결Qt 6 프로그래밍 2편
크로마키 영상처리 소스코드 구현 (2/2편) 에러가 발생합니다.
크로마키 영상처리 소스코드 구현 (2/2편)까지 모든 코드를 작성하였습니다. 에러 나는 위치는 pSourceData를 가져오는 부분이고에러 메시지는입니다.
- 미해결Qt 6 프로그래밍 2편
Writing QML Extensions with C++ 내용에 대해서 질문드립니다!
안녕하세요!Writing QML Extensions with C++ 튜토리얼 공부 중 궁금한 점이 생겨서 질문드립니다.https://doc.qt.io/qt-5/qtqml-cppintegration-topic.html위 튜토리얼에서 QML_IMPORT_NAME 부분이 이해가 되지 않습니다. 이 부분을 사용자 임의로 붙여주는 것인지, 혹은 어디서 볼 수 있는지 궁금합니다.
- 해결됨Qt 6 프로그래밍 2편
Qt Creator 기능 질문드립니다.
안녕하세요!혹시 Qt Creator을 종료 후 재시작 시에 종료 전 열었던 소스 코드를 그대로 열람할 수 있는 기능이 있을까요?
- 미해결Qt 6 프로그래밍 2편
위젯프로그램 위에 챠트 띄우기
강사님 안녕하세요 강의를 통해 Qt를 배우고 주로 단순히 하나의 창위에서 프로그램하는 위젯 프로그램을 만들고 있습니다. 해당 위젯에 Qt Charts 의 linechart 를 출력하려고 하는데요 아래 그림과 같이 버튼을 눌렀을때 라인차트를 그리려고 하는데 챠트를 임의의 위젯 위에 올려야 하는데 어떻게 하는지 가이드를 좀 주실 수 있을까요? 챠트도 하나의 위젯으로 window 창에서 오픈하는 예제는 있는데 위젯위에 위젯을 띄우는 방법이 궁금합니다. 물론 레이아웃이 적용이되어 위젯의 크기를 바꿀때 챠트도 비례하여 늘고 줄었으면 합니다.
- 미해결Qt 6 프로그래밍 2편
QT로 이미지나 json 파일 가져올때
강사님 안녕하세요 강의를 볼 수 있는 기간이 얼마 남지 않아 조금한 마음에 질문드립니다. 이미치 처리나 JSON파일 처리 강의를 볼때 이미지 파일이나 JSON 파일을 리소스에 등록시키고 가져 오던데 꼭 리소스에 등록을 해야만 하나요? 파일 있는 곳이 프로젝트 파일이이 있는 곳이면 상대적 경로로 가져오면 될 것 같은데 방법을 문의 드립니다. 아래 파일은 제가 파싱하고자 하는 JSON 파일입니다. 우선 start 오브젝트의 값들을 가져오고자 하느데 다음과 같이 하니 동작이 되지 않습니다. 문제점 지적 부탁드립니다. parseJSON(const QString &data) QJsonDocument jsonResponse = QJsonDocument::fromJson(data.toLocal8Bit()); QJsonObject totalobj = jsonResponse.object(); QJsonObject startobj = totalobj["start"].toObject(); QString Str1 = startobj["version"].toString(); QString Str2 = startobj["system_info"].toString(); ui->textEdit->append(Str1); ui->textEdit->append(Str2); JSON 파일에 오브젝트에 오브젝트를 얻어 오는 방법이 어떻게 되는 지 궁금합니다. 예로 보여주신 것은 단 하나의 오브텍트를 가지는 JSON 파일인데 보통 계층이 여러개가 되는 JSON파일은 어떤식으로 파싱을 해야 하나요? 아래 JSON파일이 이렇게 밖에 첨부되지 않는데 적당한 에디터로 옮겨야 할 것 같습니다. 죄송합니다. ->json 파일 { "start": { "connected": [{ "socket": 4, "local_host": "127.0.0.1", "local_port": 53559, "remote_host": "127.0.0.1", "remote_port": 5201 }], "version": "iperf 3.1.3", "system_info": "CYGWIN_NT-10.0 ▒▒▒▒▒▒ 2.5.1(0.297/5/3) 2016-04-21 22:14 x86_64", "timestamp": { "time": "Tue, 19 Jul 2022 05:49:51 GMT", "timesecs": 1658209791 }, "connecting_to": { "host": "127.0.0.1", "port": 5201 }, "cookie": "▒▒▒▒▒▒.1658209791.845554.28a3c74361a", "tcp_mss_default": 0, "test_start": { "protocol": "TCP", "num_streams": 1, "blksize": 131072, "omit": 0, "duration": 5, "bytes": 0, "blocks": 0, "reverse": 0 } }, "intervals": [{ "streams": [{ "socket": 4, "start": 0, "end": 1.000721, "seconds": 1.000721, "bytes": 2595618816, "bits_per_second": 2.074999e+10, "omitted": false }], "sum": { "start": 0, "end": 1.000721, "seconds": 1.000721, "bytes": 2595618816, "bits_per_second": 2.074999e+10, "omitted": false } }, { "streams": [{ "socket": 4, "start": 1.000721, "end": 2.005017, "seconds": 1.004296, "bytes": 2570846208, "bits_per_second": 2.047880e+10, "omitted": false }], "sum": { "start": 1.000721, "end": 2.005017, "seconds": 1.004296, "bytes": 2570846208, "bits_per_second": 2.047880e+10, "omitted": false } }, { "streams": [{ "socket": 4, "start": 2.005017, "end": 3.011280, "seconds": 1.006263, "bytes": 2549088256, "bits_per_second": 2.026578e+10, "omitted": false }], "sum": { "start": 2.005017, "end": 3.011280, "seconds": 1.006263, "bytes": 2549088256, "bits_per_second": 2.026578e+10, "omitted": false } }, { "streams": [{ "socket": 4, "start": 3.011280, "end": 4.000203, "seconds": 0.988923, "bytes": 2492203008, "bits_per_second": 2.016095e+10, "omitted": false }], "sum": { "start": 3.011280, "end": 4.000203, "seconds": 0.988923, "bytes": 2492203008, "bits_per_second": 2.016095e+10, "omitted": false } }, { "streams": [{ "socket": 4, "start": 4.000203, "end": 5.008456, "seconds": 1.008253, "bytes": 2597322752, "bits_per_second": 2.060850e+10, "omitted": false }], "sum": { "start": 4.000203, "end": 5.008456, "seconds": 1.008253, "bytes": 2597322752, "bits_per_second": 2.060850e+10, "omitted": false } }], "end": { "streams": [{ "sender": { "socket": 4, "start": 0, "end": 5.008456, "seconds": 5.008456, "bytes": 12805079040, "bits_per_second": 2.045354e+10 }, "receiver": { "socket": 4, "start": 0, "end": 5.008456, "seconds": 5.008456, "bytes": 12804882391, "bits_per_second": 2.045322e+10 } }], "sum_sent": { "start": 0, "end": 5.008456, "seconds": 5.008456, "bytes": 12805079040, "bits_per_second": 2.045354e+10 }, "sum_received": { "start": 0, "end": 5.008456, "seconds": 5.008456, "bytes": 12804882391, "bits_per_second": 2.045322e+10 }, "cpu_utilization_percent": { "host_total": 97.261207, "host_user": 2.194162, "host_system": 95.067046, "remote_total": 3.763427, "remote_user": 0.787845, "remote_system": 2.975581 } } }
- 미해결Qt 6 프로그래밍 2편
QT로 구현한 프로그램 실행관련 및 추가질문
강사님 안녕하세요 몇가지 질문을 드리고자 합니다. 질문 1 QT를 이용하여 Debug와 release 모드로 컴파일 하여 exe 실행파일이 만들어 졌습니다. 해당 실행파일을 QT creater 안에서 실행하는 것이 아니라. exe 파일 만으로 실행을 하려고 하니 QT6Widgets.dll , libgcc_s_seh-1dll 등 여러가지 dll파일이 없어서 코드실행을 할 수 없다고 합니다. (아래 그림 참조) 프로그램을 만들어 실행파일만 가지고 다른 PC(QT Creater가 설치되어 있지 않은) 에서 실행하기 위해서는 어떻게 해야 할까요? 질문 2 '설치판 제작을 위한 프로젝트 예제 구현' 강의를 따라하면서 analogh clock라는 프로그램을 설치하였는데 만약 프로그램을 지우고 싶다면 어떻게 해야 하나요? 질문3 라이센스 관련 질문입니다. 영리적인 목적으로 프로그램을 만들시 커머셜 라이센스가 필요하다고 하셨는데 찾아보니 1년간 갱신을 하는 것 같습니다. 만일 1년간 라이센스 비용을 내고 프로그램을 개발완료하였다면 해당 프로그램을 계속 영리목적으로 판다고 하였을때 라이센스를 계속 갱신하여야 하나요? 구현은 1년 안에 끝났는데 프로그램을 판매 배포 하였는데, 구현한 프로그램을 지속적으로 배포하려면 저는 계속 라이센스를 구매해야 하는 건가요? 이상입니다.
- 미해결Qt 6 프로그래밍 2편
Go to slots 을 사용했을때 connect 함수 위치
Qt가 익숙치 않으니 계속 질문 하게 되네요 다름이 아니라 강사님께서 가르쳐 주신 Signal Slot 연결은 connect 함수를 통해 이루진 다는 것을 아는데요 ui에서 임의의 위젯 예를 들어 라디오 버튼에 대한 slot 함수를 만들기 위해 Qt Creator에서 지원하는 Go to slot .를 사용하여 clicked() 연결하였을때 (아래그림참조) 이런 경우 자동으로 on_radiobutton_clicked()라는 slot 함수를 만들어 주더군요 그래서 코딩을 하면 호출이 되는데 계속 찾아봐도 시그널와 이어지는 connect 부분이 코드에 없어서 문의 드립니다. 원래 없이도 동작하는 것인지 아니면 제가 찾지 못하는 곳에 있는지 . 추가로 라디오 버튼을 추가하고 Go to slot을 쓰지 않고 아래와 같이 connect 를 하였으나 connect(ui->radioButton2, SIGNAL(click()),this, SLOT(slotradioButton2())); 클릭을 해도 동작이 되지 않았습니다. 이유를 여쭤봅니다 감사합니다.
- 미해결Qt 6 프로그래밍 2편
Qt Quick 모듈의 해석 질문드립니다.
안녕하세요! 해당 부분에서 "kinds of parenting"의 프로그래밍적 의미가 이해가 되지 않아서 질문 드립니다.
- 미해결Qt 6 프로그래밍 2편
QT에서 그래프 챠트 그리는 방법 문의
안녕하십니까 강사님 QT로 view 관련 강의를 잘 수강하였습니다. 제가 현재 하고 싶은것은 값(센서값, 트래픽 값)이 실시간으로 넘어오면 실행중에 챠트와 같은 그래프로 출력하고자 합니다. Labview나 vee 같은 그래픽컬 프로그래밍은 차트 컨트롤을 그냥 가져오면 되는데 QT에는 그런 기능이 있는지 궁금합니다. 아니면 그래픽 드로잉을 통해 일일이 구현해야 하는지 문의드립니다. 가 감사합니다.
- 미해결Qt 6 프로그래밍 2편
Window에서 프로그래밍한 것을 리눅스로 옮기는 방법
강사님 안녕하십니까. 1편에 이어 2편도 수강하게 되었습니다. ㅎㅎ 병행하여 개인 프로젝트도 하고 있는데 Window에서 작업한 코드와 프로젝트를 리눅스로 옮기려고 합니다. 리눅스에도 QT가 설치되어 있는 상황입니다. QT는 크로스 플랫폼의 장점이 있는데 옮기는 작업을 어떻게 해야할지 몰라 문의 드립니다. window에서 작업된 헤더파일, cpp팡ㄹ, ui 파일들을 복사만 하면 되는것인지 아니면 프로젝트 폴더 전체를 복사해서 open 하며 되는 것인지 문의드립니다.