Qwt 위젯에 대해 한번, 스윽 보고 가죠. 상세한 설정에 대해서는 설명하지 않습니다.
사용할때 꼭 필요한 연관 함수들의 정의만 살펴보도록 하죠, 위젯 설명 중 기타 함수들이라고 되어 있는 부분은 막상 적용할려고 해보면 반응하지 않거나, 별로 의미가 없다고 본인이 판단한 함수들입니다. 지극히 본인의 판단...(다른 분들은 꼭 필요한 기능일 수 도 있지만)
그림 1. Qwt 위젯 |
Qwt 위젯의 경우 속성창에서 배경색을 변경하여도 변경되지 않는다.
1. QwtKnob
그림 2. QwtKnob 위젯 |
knob 값 설정
knob 설정값을 집어 넣습니다.
knob 기호 설정
개인적으로 knobDot가 더 보기 좋네요. 기본은 knoLine입니다.
knob 범위 설정
knob 읽기 전용 설정
기타 knob 함수
- qwtKnobSetOrientation(p, id, orientation);
의미 없음
- qwtKnobSetBorderWidth(p, id, width);
- qwtKnobSetTotalAngle(p, id, angle);
- qwtKnobSetKnobWidth(p, id, width);
- qwtKnobSetMass(p, id, mass);
2. QwtSlider
그림 3. QwtSlider 위젯 |
Slider 범위 설정
%뭐가 잘못 됬나 범위 설정이 되지않고 무조건 0, 100의 값이 튀어나온다. 아마 작동하지 않는 기능같다.
Slider 방향설정
Slider 스케일 위치
Slider 배경 모양
개인적으로 SliderBgBoth가 가장 마음에 든다.
Slider 값 설정
Slider 읽기 전용 설정
기타 Slider 함수들
- qwtSliderSetMass(p, id, mass);
- qwtSliderSetThumbLength(p,id,length);
- qwtSliderSetThumbWidth(p,id,width);
- qwtSliderSetBorderWidth(p,id,width);
- qwtSliderSetMargins(p,id,x,y);
3.QwtCounter
그림 4. QwtCounter 위젯 |
Counter 최소값 설정 (초기값 : 0)
Counter 최대값 설정 (초기값 : 1)
Counter 증가값 설정 (초기값 : 0.001)
Counter 초기값 설정 (초기값 : 0)
Counter 버튼 증분 설정 (우측, 좌측 화살표 1 버튼)
Counter 버튼 증분 설정 (우측, 좌측 화살표 2 버튼)
기타 QwtCouter 함수
- qwtCounterSetStepButton3(p,id,n);
- qwtCounterSetNumButtons(p,id,n);
- qwtCounterSetIncSteps(p,id,button,n);
4. QwtWheel
그림 5.QwtWheel 위젯 |
Wheel 방향 설정
Wheel 읽기 전용 설정
Wheel 관성 설정
Wheel 회전 각도 설정 (360도(초기값) 최대)
Wheel 눈금 마크 설정
Wheel 내부 간격 지정(기본값이 좋다)
Wheel 초기값 지정 (0 ~ 100 사이)
기타 QwtWheel 함수
- qwtWheelSetViewAngle(p,id,angle);
- qwtWheelSetWheelWidth(p,id,width);
5. QwtThermo
그림 6. QwtThermo 위젯 |
QwtThermo 위젯 표시 범위 설정
QwtThemo 범위 설정
이 값은 qwtThermoSetScale()함수에서 설정한 min, max 값과 동일하거나 작은 값이어야한다. 실제 qwtThermoSetValue() 함수에서 설정한 값이 이 값 영역을 벗어나면, (작으면 맨 밑바닥에 조금, 크면 전체적으로 색상이 나타난다.)
QwtThemo 값 설정
QwtThemo 위젯, 라벨이 나타나는 방향 설정
QwtThemo 색상 설정
QwtThemo 알람 색상 설정
QwtThemo 알람 Level 설정
QwtThemo 알람 Enable 설정
QwtThemo 파이프 폭 설정
기타 qwtThermo 함수
- qwtThermoSetBorderWidth(p,id,width);
- qwtThermoSetMargin(p,id,margin);
6. QwtAnalogClock
그림 7. QwtAnalogClock 위젯 |
AnalogClock 시간 설정
Value는 초 개념입니다. (5분 30초 인 경우 330)
AnalogClock 모드 설정
기계 지침뿐 아니라 Scale (숫자)도 회전 가능합니다.
AnalogClock 테두리 두께 설정
기타 AnalogClock 다음과 같은 함수들이 있습니다. 사용방법은 잘 모르겠네요.
qwtAnalogClockSetMass(p,id,mass);
qwtAnalogClockSetReadOnly(p,id,rdonly);
qwtAnalogClockSetFrameShadow(p,id,shadow);
qwtAnalogClockShowBackground(p,id,show);
qwtAnalogClockSetWrapping(p,id,wrap);
qwtAnalogClockSetScale(p,id,maxMajIntv,maxMinIntv,step);
qwtAnalogClockSetScaleArc(p,id,min,max);
qwtAnalogClockSetOrigin(p,id,orig);
qwtAnalogClockSetNeedle(p,id,which,r1,g1,b1,r2,g2,b2,r3,g3,b3);
7. QwtDial
그림 8. QwtDial 위젯 |
Dial 값 설정
Dial 범위 설정
최소, 최대, interval
interval은 값 증가분인 것 같다. 1씩 증가하는 경우 1을 입력하자.
Dial 스케일 설정
maxMajIntv, maxMinIntv, step 세가지 인자가 있지만 테스트 결과 maxMajIntv 값에는 반응하지 않는 것같다.
내가 원하는 것 기준으로 한다면, maxMinintv, step 이 두가지만 사용하여도 된다.
- maxMinIntv (부 눈금 제어)
주 눈금 사이에 나타나는 눈금 제어
예) 주 눈금 간격이 25일때 만약 5개의 눈금을 나타내고 싶으면 5, 10개를 나타내고 싶으면 10
(주의) 주 눈금 값을 눈금 간격으로 나눈 값이 정수와 같이 떨어져야( 25/10 = 2.5) 제대로된 눈금이 나타난다. 떨어지지 않으면 자동으로 설정값보다 큰 수량으로 나타난다. - Step 주 눈금 제어
예) 만약 qwtDialSetRange()에서 설정한 범위가 0 ~ 100, 25 간격으로 주 눈금을 나타내고 싶으면 25 를 step 값에 넣어주면된다.
Dial ReadOnly
GUI 화면에서 마우스로 값을 변경하고 싶으면 0, 기본적으로 Readonly =1 로 설정되어GUI 마우스 조작으로 변경할 수 없다.
Dial Scale Arc 설정
시계방향으로 값이 증가하며 시작 위치는 하부, 즉 하부가 0입니다. 거의 사용하지 않을 것 같다.
기타 QwtDial 관련 함수들입니다.
- qwtDialSetMass(p,id,mass);
- qwtDialSetFrameShadow(p,id,shadow);
- qwtDialShowBackground(p,id,show);
- qwtDialSetLineWidth(p,id,width);
- qwtDialSetMode(p,id,mode);
- qwtDialSetWrapping(p,id,wrap);
- qwtDialSetOrigin(p,id,orig);
- qwtDialSetNeedle(p,id,which,r1,g1,b1,r2,g2,b2,r3,g3,b3);
8. QwtCompass
그림 9. QwtCompass 위젯 |
QwtCompass 관련 함수들입니다.
- qwtCompassSetSimpleCompassRose(p,id,numThorns,numThornLevels,width);
- qwtCompassSetMass(p,id,mass);
- qwtCompassSetReadOnly(p,id,rdonly);
- qwtCompassSetFrameShadow(p,id,shadow);
- qwtCompassShowBackground(p,id,show);
- qwtCompassSetLineWidth(p,id,width);
- qwtCompassSetMode(p,id,mode);
- qwtCompassSetWrapping(p,id,wrap);
- qwtCompassSetScale(p,id,maxMajIntv,maxMinIntv,step);
- qwtCompassSetScaleArc(p,id,min,max);
- qwtCompassSetOrigin(p,id,orig);
- qwtCompassSetNeedle(p,id,which,r1,g1,b1,r2,g2,b2,r3,g3,b3);
- qwtCompassSetValue(p,id,value);
이상으로 Qwt 관련 위젯에 대해 알아보았습니다.
위젯 자체에는 함수가 정의되어 있지만, 막상 적용해 보면 동작하지 않는 것 처럼 보이는 함수들이 많이 있었습니다. 하지만 기본적인 기능은 충분히 수행할 수 있습니다.
댓글 없음:
댓글 쓰기