목록QT (28)
알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)
WebEngine 사용중 Devtool(debug 툴) 사용법 qt의 webengine 은 chrome 로 되어 있습니다. 그래서 chrome를 사용하는데 devtool 또한 사용 할수 있습니다. https://doc.qt.io/qt-5.11/qtwebengine-debugging.html 을 보면 처음에는 무슨 말인지 잘몰랐습니다 command-line arguments 에 입력 하고해서요 여기에 넣어 주면 됩니다, 그리고 나서 webengine 프로젝트가 있는 프로그램을 실행 하면 (저는 qt 에서 기본으로 제공하는 example 인) 해당 프로젝트를 사용 했습니다. 그리고 크롬 브라우저를 한개 열어서 위와 같이 뜨게 됩니다. 클릭해서 들어가면 위와 같이 디버거 툴을 사용할수 있습니다.
Qftp 사용 방법 과거 QT4.x 버전에는 QFtp 라는 라이브러리가 있어서 ftp 사용이 편했습니다. 하지만 현재는 존재하지 않습니다. 무슨 이유인지 모르겠지만 Qt 회사에서 5.x 부터는 지원을 안합니다 . 그래서 사람들이 그전 라이브러리를 그대로 포팅? 을 했습니다. https://github.com/qt/qtftp 해당 사이트가 오픈 소스 사이트 이며 컴파일 및 사용 방법을 알아 보겠습니다. Qt를 설치하면 다음과 같은 커맨더 창이 설치 됩니다. qmake 등이 환경 설정이 되어 있습니다. 하지만 컴파일을 위해서 visual studio 컴파일러가 필요합니다. 그래서 환경 설벙 파일을 만져 줍니다. 위와 같이 환경 패스 경로를 등록해 줍니다 그럼 위와 같이 환경 패스 설정이 되엇습니다. 이게 위..
QThread 안에서 Event 동기화 코드 QThread 의 Run 코드 안에서 가끔 evnet 을 받고 나서 다음 로직을 처리해야 할때가 있습니다. 다음은 그럴때 사용하는 방법입니다. 보면 QThread 는 run void class:run(){ while(!isInterruptionRequested()){qDebug()
QVector QList 등의 자료 구조를 쓰다 보면 포인터 type 을 탬플릿으로 사용할 때가 있다 이럴때 메모리 관리를 위해서 해동 자료 구조에서 사용한 포인터 변수들을 메모리 관리를 해줘야 하는데 일일이 delete 하는것보다 qDeleteAll 메소드를 사용하는것이 좋다. QList list; list.append(new Employee("Blackpool", "Stephen")); list.append(new Employee("Twist", "Oliver")); qDeleteAll(list.begin(), list.end()); list.clear(); 예제는 다음과 같다. 참고 사이트 : http://doc.qt.io/qt-5/qtalgorithms.html#qDeleteAll
QPrinter for QTextEdit QTextEdit text(table) // I checked "table" and it is complete. // If I send it to the clipboard and paste it in excel it looks fine. QPrinter printer(QPrinter::HighResolution);printer.setFullPage(true);QPrintDialog printDialog(&printer);printDialog.setEnabledOptions(QAbstractPrintDialog::PrintPageRange);printDialog.setPrintRange(QAbstractPrintDialog::AllPages);if (text.tex..
Qt 우분투 QODBC 와 MSSQL(freetds) 우분투 QT 에서 MSSQL 에 접속 하려면 다른 DB 보다 좀더 많은 작업 필요 합니다. 먼저 unixodbc 사이트에서 http://www.unixodbc.org/ 에서 unixODBC-2.3.6.tar.gz 을 다운 받습니다. cd $QTDIR/qtbase/src/plugins/sqldrivers qmake -- ODBC_PREFIX=/usr/local/unixODBC make install sub-odbc그리고 나면 가 생성 됩니다. 그리고 나서 sudo apt-get install unixodbcsudo apt-get install freetds-dev sudo apt-get install tdsodbc 를 설치해 줍니다. 그러면 2개의 파일..
Qt json parer 사용법 Qt 에서는 기본적으로 Json 라이브러리를 제공해 줍니다. 제가 json 으로 가져올 데이터는 http://comp.fnguide.com/SVO2/common/sp_read_json.asp?cmdText=menu_6_2&IN_U_CD=I.001&IN_MARKET_GB=&IN_REPORT_GB=A&IN_SORT=9 위 사이트는 간단한 주식 데이터 사이트 입니다. json 형식으로 되어 있습니다. 방식은 get 방식 입니다. 해당 사이트로부터 데이터를 받아와서 json 으로 파싱 하는 샘플 코드 및 리뷰를 하겠습니다. 데이터 내용은 [{"RANK":1,"name":"\uD06C\uB77C\uC6B4\uD574\uD0DC\uD640\uB529\uC2A4","결산년월":"201..
우분투 (리눅스) mysql 라이브러리 사용 우분투에서 qt mysql 드라이버는 그냥 사용하게 되면 driver not loaded 라는 에러가 뜬다. 기본 QT 홈페이지에서 설치하는 설치 패키지에 있는것은 인식하지 못한다. cd $QTDIR/qtbase/src/plugins/sqldrivers qmake -- MYSQL_PREFIX=/usr/local make sub-mysql 위 내용은 Qt document 에 있는 내용이다. http://doc.qt.io/qt-5/sql-driver.html#qmysql 위와 같이 qmake 로 만들어 주고 필자는 make install sub-mysql 도 해줬다. 그리고 난뒤 Qt 어플리케이션을 실행 하면 lib가 정삭 작동 된다. 참고로 기본적으로 libmy..
ubuntu qt 필요 라이브러리 path 설정하기 windows 같은 경우 배포가 필요할때 windeployqt 같은 유틸을 사용해서 배포 되지만 linux 시스템에서는 직접 path 를 등록 해줘야 합니다. 기본 path 등록 방법은 /etc/ld.conf.d/ 의 폴더 안에 임의 conf 파일을 만들어 주고 만들 파일안에 Qt 라이브러리 및 qt에서 사용하는 3party lib path 들을 적어 주면 됩니다. example) sudo nano qt5.conf 로 파일을 만들고 저같은 경우 qt 라이브러리가 있는곳은 /home/fab/Qt/5.7/gcc_64/lib 입니다. qt5.conf 파일안에 /home/fab/Qt/5.7/gcc_64/lib 을 적어 주고 저장 한 다음 터미널에서 sudo l..
가끔식 시그널의 리턴을 받고 다음 구문을 실행 해야 할때가 있습니다. QNetworkRequest request; request.setUrl(QUrl("http://10.29.10.66:8282/get_pad_job_state")); QNetworkReply *netReply = web_manger->get(request); QEventLoop loop; connect(netReply,SIGNAL(finished()),&loop,SLOT(quit())); loop.exec();