- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- kill -9
- 파티션 빠른 삭제
- CentOS
- SQL
- view 획득
- 가변영역 스크롤
- springboot
- 스크롤적용
- mybatis exception
- 시간대별 통계
- rn
- springboot 재가동
- ffmpeg
- 시간대 테이블생성
- Back 키 클릭 감지
- 피쉬랜드
- 코드로 서버 재실행
- group by
- pid 찾아 kill
- 말줌임 CSS
- c언어
- MariaDB
- Activity 전체화면
- MFC
- sql exception
- CSS
- 터치좌표 view
- reactnative
- MySQL
- vc++
개발은 하는건가..
CSkinSliderCtrl 을 상속받아 원하는 클래스를 만든 후 아래와 같이 CustomDrawSliderBg, CustomDrawThumb, OnSliderPosChange 를 override 하여 원하는 형태로 DC 에 그리고 필요한 이벤트를 연결하면된다. 이벤트를 연결하면된다 #pragma once #include "SkinSliderCtrl.h" class CTestSliderCtrl :public CSkinSliderCtrl { public: CGCSSliderCtrl(); virtual ~CGCSSliderCtrl(); struct CSCallback { void(*OnSliderPosChange)(CGCSSliderCtrl *pSlider, int pos, void *pOwner); voi..
윈도우의 배율에 따라 컨트롤의 크기나 위치가 변경되는 것을 막으려고 DPI 인식을 높은 DIP 인식으로 변경해도 리소스 에디터에서 배치한 컨트롤의 위치가 배율에 영향을 받아 변경된다. 찾고 찾아도 한방에 처리할 수 있는 방법은 못찾았고 그나마 내가 생각한 쉬운 방법을 정리해본다. 우선 윈도우 배율을 변경하지 말고 100% 상태로 리소스 에디터에서 컨트롤들의 크기와 위치를 맞춘 후 실행해서 맞게 배치되었는지 확인한다. SetCtrlMove, PrintCtrlArrangePos 함수를 추가하고 OnInitDialog 에서 호출한다. PrintCtrlArrangePos 함수를 통하여 현재 윈도우의 자식 컨트롤 윈도우들을 모두 찾아 해당 위치를 로그로 출력한다. void CBaseDialog::SetCtrlMo..
HDC hDc = ::GetDC(0); FLOAT fDPIScaleX = GetDeviceCaps(hDc, LOGPIXELSX) / 96.0f; FLOAT fDPIScaleY = GetDeviceCaps(hDc, LOGPIXELSY) / 96.0f; ::ReleaseDC(0, hDc); fDPIScaleX, fDPIScaleY 에 각 가로 세로 비율이 저장되는데 보통은 가로세로 비율을 동일하게 나온다. 디스틀레이 설정에서 125% 또는 150% 로 설정했을 경우 각 1.25, 1.5 값을 반환한다. 배율되지 않은 원본 좌표가 필요할 경우 해당 좌표 / fDPIScaleX 해서 얻으면 되겠다.