디자이너가 웹에서 가끔보는 Tab 형태의뷰를 아래와 같이 가이드를 해주었다.

위에 처럼 해달라고.. ㅜㅜ

윈도우 어플리케이션이라 힘들텐데............ 라고 말을 했지만 존심은 허락하지 않음 ㅋ

위의 효과를 주기위해 #QTabBar 물어 뜯어보기로................ ㅋ

아무리 찾아봐도 답이 보이지 않았는데..... 구글링의 결과 아래와 같은 속성이 있었다.

QTabBar::tab:top:first // first 라는 속성이 있을 줄이야. 이것이 첫번째 버튼이다......

#StyleSheet를 완성해보자....

상단 TabBar를 기준으로 하였다.

QTabBar::tab:top { color: #4f4f4f; border: 1px solid #F0F0F0; border-top: 1px solid #E0E0E0; border-bottom: 2px transparent black; background-color: #ffffff; padding: 5px; min-width: 110px; border-top-left-radius: 1px; border-top-right-radius: 1px; height: 27px; } QTabBar::tab:top:selected { color: #0f0f0f; background-color: #E0E0E0; border: 1px solid #E0E0E0; border-top: 1px solid #E0E0E0; border-bottom: 2px solid #3daee9; border-top-left-radius: 1px; border-top-right-radius: 1px; } QTabBar::tab:top:!selected:hover { border-bottom: 1px solid #C0C0C0; background-color: #C0C0C0; } QTabBar::tab:top:!selected { border-bottom: 1px solid #E0E0E0; background-color: #ffffff; } QTabBar::tab:top:first { color: #4f4f4f; border: 1px solid #F0F0F0; border-top: 1px solid #E0E0E0; border-bottom: 1px solid #E0E0E0; background-color: #ffffff; padding: 5px; min-width: 27px; border-top-left-radius: 1px; border-top-right-radius: 1px; height: 27px; } QTabBar::tab:top:first:selected { color: #0f0f0f; background-color: #E0E0E0; border: 1px solid #E0E0E0; border-top: 1px solid #E0E0E0; border-bottom: 1px solid #E0E0E0; border-top-left-radius: 1px; border-top-right-radius: 1px; } QTabBar::tab:top:first:!selected:hover { border-bottom: 1px solid #C0C0C0; background-color: #C0C0C0; } QTabBar::tab:top:first:!selected { border-bottom: 1px solid #ffffff; background-color: #ffffff; }

위처럼 #QTabBar 의 first 속성만 따로 지정한다.

추가로 첫번째 버튼의 x 버튼은 소스상에서 아래와 같이 수정하면 x 버튼을 숨길수 있다.......

QWidget *closeBtn = ui->tabMainWidget->tabBar()->tabButton(0, QTabBar::RightSide); closeBtn->hide();

.

.

.

.

.

.

.

두둥

.

.

.

드뎌 완성!!!!!!

비슷하죠~~~~~~~~~~~~~~ ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

좀더 다듬으면.... 디자이너가 이야기한데로 똑같이 되겠네요 ㅋㅋㅋ

블로그 이미지

맨오브파워

한계를 뛰어 넘어서..........

,

1.시스템 업데이트 및 필수 패키지 설치

sudo apt update
sudo apt upgrade
sudo apt install build-essential cmake git pkg-config
sudo apt install libjpeg-dev libtiff-dev libpng-dev
sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt install libxvidcore-dev libx264-dev
sudo apt install libgtk-3-dev
sudo apt install libatlas-base-dev gfortran
sudo apt install python3-dev

 

2.OpenCV 및 OpenCV Contrib 소스 코드 다운로드

git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

 

3.OpenCV 빌드 디렉토리 생성

cd ~/opencv
mkdir build
cd build

cd ~/opencv는 git  다운 받은 경로로  생각하면 된다.

 

4.CMake를 사용하여 OpenCV 설정

cmake -D CMAKE_BUILD_TYPE=Release \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
      -D BUILD_EXAMPLES=ON ..

~/opencv_contrib/modules도 git  다운 받은 경로로  변경한다.

 

5.OpenCV 컴파일 및 설치

make -j4
sudo make install
sudo ldconfig

 

 

 

블로그 이미지

맨오브파워

한계를 뛰어 넘어서..........

,

윈도우 또는 리눅스환경에서 Qt프레임웍기반의 안드로이드를 위한 프로그램을 개발할 수 있다. 이글에서는 윈도우 환경에서 개발하는 방법을 설명한다.

 

먼저 안드로이드를 위한 컴파일된 Qt를 설치해야하는데 Qt 홈페이지를 방문해서 Qt Online Installer for Windows를 다운로드 받아 실행하거나 Qt가 설치되어 있다면 MaintenanceTool 을 실행한다.

 

Select Components에서 Android x86 및 Android ARMv7을 선택하고 설치한다.

 

안드로이드용 Qt설치가 끝났다면 안드로이드 개발관련 도구들을 다운로드받아야하는데 Android 스튜디오를 다운받을 수 도 있지만 이 글에서는 명령줄 도구로된 것을 사용할 것이다.

 

참고로 Android SDK 도구 버전 25.3.0 이상에서는 SDK 패키지 관리를위한 sdkmanager 와 AVD (Android Virtual Device) 관리를 위한 avdmanager를 명령 줄 도구로만 제공한다는 점을 알아두기 바란다.

 

그리고 한가지 더 중요한 사항은 Qt 버전을 v5.9 이하로 개발할 경우 SDK 도구 패키지 v25.2.5 이하를 사용한다.

 

Android SDK 다운로드 및 설치

 

Android NDK 다운로드 및 설치

Java JDK 다운로드 및 설치

 

윈도우에서는 기본 USB드라이버로 디버깅할 수 없으므로 Google USB드라이버를 설치한다.

CMD(명령프롬프트)를 실행하고 sdkmanager 폴더로 이동한 후 sdkmanager.bat "extras;google;usb_driver" 실행.

(리눅스나 맥에서는 필요치 않다. 자세한 내용은 이곳을 참고)

 

QtCreator설정

Option - Devices의 Android탭에서 JDK, SDK, NDK의 설치 및 폴더 경로를 설정한다. 

 

SDK 25.3 이후  SDK Manager, AVD Manager는 더이상 GUI를 제공하지 않지만 Qt Creator는 Android package목록을 제공하므로 간단하게 패키지를 설치할 수 있다.

 

패키지 설치 

 

이제 안드로이드 디바이스를 연결하고

다음과 같은 디버깅을 허용할지 묻는 팝업이 뜨면 확인을 누른다.

 

프로젝트를 만들때 kit은 아래처럼 처음에 설치한 Android kit을 선택한다.

 

프로젝트 생성 완료 후 Run을 실행하고 그림처럼 연결된 안드로이드 디바이스를 선택하면 잠시 후  선택한 장치에서 프로그램이 실행된다.

 

아래 캡쳐 이미지는 Qt기본 예제(webView)를 안드로이폰에서 실행한 것이다. 

블로그 이미지

맨오브파워

한계를 뛰어 넘어서..........

,