본문 바로가기
SWE/Qt

Qt예제] QLCDNumber 이용해 숫자 표시하기

by S나라라2 2019. 8. 21.
반응형

QLCDNumber 

: LCD화면에서 보는 디지털 형식으로 숫자를 표현할 수 있음

 

QLCDNumber 위젯이 표현하는 숫자 형식

QLCDNumber::Hex = 0 = 16진수

                  ::Dec = 1 = 10진수

                  ::Oct = 2 = 8진수

                  ::Binary = 3 = 2진수

 

숫자 스타일

QLCDNumber::Outline = 0 = 숫자의 배경색의 윤곽을 강조 (Default)

                  ::Filled = 1 = 숫자의 모든 부분을 전경색으로 표시

                  ::Flat = 2 = 전경색 부분을 Flat 스타일로 지정

 

 

<QLCDNumber 위젯 이용해 숫자 표시하기>

 

예제결과

 

//mywidget.h

#include <QDialog>

class QLCDNumber;
class QHBoxLayout;

class MyWidget : public QDialog
{
	Q_OBJECT

	public :
		MyWidget();

	private :
		QLCDNumber *lcd1;
		QLCDNumber *lcd2;
		QLCDNumber *lcd3;
		QHBoxLayout *layout;
};

 

 

//mywidget.cpp

#include <QtGui>
#include "mywidget.h"

MyWidget::MyWidget()
{
	setFixedSize(500,100);

	lcd1 = new QLCDNumber(2); // 위젯 선언, 2 = 크기 지정
	lcd1->setSegmentStyle(QLCDNumber::Filled); // 숫자 스타일 표시 -> 숫자의 모든 부분을 전경색으로 표시
	lcd1->display(24); // 표시할 숫자

	lcd2 = new QLCDNumber(2);
	lcd2->setSegmentStyle(QLCDNumber::Outline); //-> 숫자의 배경색의 윤곽 강조
	lcd2->display(24);

	lcd3 = new QLCDNumber(2);
	lcd3->setSegmentStyle(QLCDNumber::Flat); //전경색 부분을 Flat 스타일로 지정
	lcd3->display(24);

	layout = new QHBoxLayout;
	layout->addWidget(lcd1);
	layout->addWidget(lcd2);
	layout->addWidget(lcd3);

	setLayout(layout);

}

 

 

//main.cpp

#include <QApplication>
#include <QStyleFactory>

#include "mywidget.h"

int main(int argc, char *argv[])
{
	QApplication app(argc, argv);
	MyWidget widget;

	QStringList styles = QStyleFactory::keys();
	app.setStyle(styles[3]);

	widget.show();
	return app.exec();
}

 

반응형