Qt 레이아웃 시스템 완벽 가이드: WPF 개발자를 위한 핵심 비교

Qt는 WPF 및 WinForms 개발자에게 매우 흥미로운 선택지입니다. 이 글에서는 Qt 레이아웃 시스템의 핵심 개념을 다루며, WPF 경험이 있는 개발자들이 어떻게 Qt로 빠르게 전환할 수 있는지에 초점을 맞춥니다. Qt의 핵심 아키텍처 Qt는 크로스 플랫폼 UI 프레임워크로 C++를 기반으로 하며, 강력한 레이아웃 시스템과 논리적 픽셀 단위를 제공합니다. 기본적으로 DPI 인식 ...

6월 29일 02:33에 게시됨

CANdevStudio 프로젝트 시작하기

CANdevStudio 프로젝트 튜토리얼 1. 프로젝트 디렉토리 구조 CANdevStudio는 CAN 버스 시뮬레이션을 위한 개발 도구입니다. 프로젝트의 디렉토리 구조는 다음과 같이 구성되어 있습니다: CANdevStudio/ ├── CMakeLists.txt ├── README.md ├── src/ │ ├── main.cpp │ ├── CanBusAdapter.cpp │ ├── CanBusAdapter.h │ ├── ... ├── include/ │ ├── CanBusAdapter ...

6월 26일 18:54에 게시됨

Qt QMenu 스타일링 및 단축키 설정 가이드

QMenu와 QMenuBar를 커스터마이징하는 방법과 단축키 표시 관련 문제 해결 방법을 정리합니다. 단축키 표시 문제 해결 QMenu를 QMenuBar에 추가하지 않고 단독으로 사용할 때 Ctrl+키 조합 같은 단축키 힌트가 표시되지 않는 문제가 있습니다. 이를 해결하려면 QAction을 QToolBar에 등록해야 단축키가 정상 동작합니다. 기본 QMenu 스타일시트 /* 메뉴 전체 영역 */ QMe ...

6월 22일 23:43에 게시됨

Qt와 C++를 이용한 학생 정보 관리 시스템

헤더 파일 StudentAdd.h #pragma once #include <QtWidgets/QWidget> #include "ui_StudentAdd.h" class StudentAdd : public QWidget { Q_OBJECT public: StudentAdd(QWidget *parent = Q_NULLPTR); void resetInterface(); void saveData(QString content); private: Ui::StudentAddClass ui; private slots: void confirmButtonC ...

6월 21일 20:05에 게시됨

Qt QHeaderView에 체크박스 구현하기

QTableView의 헤더 영역에 체크박스를 배치해야 할 때, Qt는 기본 API를 제공하지 않는다. 이 글에서는 QHeaderView를 커스터마이징하여 체크박스를 추가하는 세 가지 방식을 살펴본다. 방식 1: paintSection 재정의 가장 일반적인 접근법은 paintSection와 mousePressEvent를 오버라이드하는 것이다. CustomHeader.h #ifndef CUSTOM_HEADER_H #define CUSTOM_HEADER_H ...

6월 20일 23:45에 게시됨

QTableView 열 너비를 균등하게 조정하는 방법

QTableView에서 열 너비 자동 조정 전략 Qt 애플리케이션 개발 시, 데이터 표시용 위젯으로 QTableView를 사용하는 경우가 많다. 특히 데이터베이스 조회 결과를 표 형태로 출력할 때, 열의 너비가 적절하지 않으면 가독성이 떨어지기 때문에 열 너비를 스마트하게 조정하는 것이 중요하다. 기본 제공 기능만으로는 제한적이므로, 실제 콘텐츠에 맞춰 최적의 너비를 계산 ...

6월 19일 19:06에 게시됨

QextSerialPort-1.2를 활용한 크로스 플랫폼 시리얼 통신 구현

QextSerialPort-1.2 라이브러리 개요 하드웨어 통신이 필요한 소프트웨어 개발 환경에서 안정적이고 기능이 풍부한 시리얼 포트 통신 라이브러리는 개발 효율성과 시스템 성능을 높이는 핵심 요소입니다. QextSerialPort-1.2는 Qt 프레임워크 기반에서 널리 사용되는 라이브러리로, 복잡한 시리얼 통신 작업을 간단한 API로 처리할 수 있도록 설계되었습니다. 이 라이브러 ...

6월 19일 17:10에 게시됨

Qt에서 시그널과 슬롯을 활용한 폰트 스타일 변경

Qt의 시그널과 슬롯 메커니즘은 GUI 프로그래밍에서 중요한 역할을 합니다. 이를 통해 특정 이벤트가 발생했을 때 해당 동작을 실행할 수 있습니다. 아래에서는 체크박스와 라디오버튼을 이용해 텍스트의 폰트 스타일과 색상을 제어하는 방법을 설명하겠습니다. 1. 기본 개념 클래스 간의 상속 관계는 부모 클래스로부터 속성과 메서드를 물려받아 새로운 기능을 추가하거 ...

6월 9일 20:11에 게시됨

Qt QComboBox的setEditable与currentTextChanged信号源码分析

서론 최근에 QComboBox에서 항목을 선택하면 자동으로 조건 검색을 트리거하는 기능을 구현했습니다. 그런데 ComboBox를 초기화할 때 시그널 연결 때문에 currentTextChanged 시그널이 발생하는 것을 발견했습니다. 코드는 대략 다음과 같습니다: connect(ui->comboBox, &QComboBox::currentTextChanged, this, &CountryType::slot_pageSearch) ...

6월 6일 23:46에 게시됨

WinForm 개발자를 위한 Qt UI 컨트롤 및 레이아웃 매핑과 핵심 개념

WinForm 환경에서 Qt 프레임워크로 전환할 때 개발자가 가장 먼저 체감하는 장벽은 비즈니스 로직이 아니라 UI 컴포넌트의 명명 규칙과 속성 제어 방식입니다. WinForm은 비주얼 디자이너의 속성 창을 통해 직관적으로 설정하는 반면, Qt는 코드 상에서 열거형(Enum)과 메서드를 활용해 세밀하게 제어하는 접근 방식을 취합니다. 1. 주요 UI 컴포넌트 매핑 테이블 WinForm ...

6월 6일 01:49에 게시됨