- 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 |
- MySQL
- MFC
- Back 키 클릭 감지
- view 획득
- c언어
- 말줌임 CSS
- pid 찾아 kill
- Activity 전체화면
- kill -9
- 터치좌표 view
- 텍스트컬러
- 스크롤적용
- MariaDB
- ffmpeg
- CentOS
- 가변영역 스크롤
- sql exception
- 파티션 빠른 삭제
- rn
- CSS
- SQL 첫날
- mybatis exception
- 코드로 서버 재실행
- reactnative
- vc++
- SQL 마지막날
- DB 계정생성
- 피쉬랜드
- springboot 재가동
- springboot
목록전체보기 (112)
개발은 하는건가..
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 해서 얻으면 되겠다.
디스크 단위 용량 확인 - df : 남은용량 확인(기본 명령어) - df -h : 깔끔하게 정리해서 보여줌 - df . : 현재 경로의 디스크용량만 확인 - df -m, -k : megabyte, kilobyte단위로 확인 현재 경로 아래의 사용량 확인 - du : 현재경로 아래 확인(기본명령어) - du -sh * : 현재 경로 아래 사용량 확인 1depth - du -a : 파일단위로 사용량 확인 출처 : https://gun0912.tistory.com/22
카메라의 Pan Tilt 조정에 모바일 게임에서 사용되는 가상 조이스틱 패드 같은 컨트롤이 필요하여 만들어 보았다. 사용방법 // GDI+ 를 사용하므로 Application 클래스에서 GDI+ 를 사용할 수 있도록 초기화 한다. // 리소스 편집기에서 Static 컨트롤을 올리고 컨트롤 변수를 생성하여 CPantTiltCtrl 로 서브클래싱한다. //CStaticm_PanTiltCtrl; CPanTiltCtrlm_PanTiltCtrl; // 컨트롤 변수를 통해 초기화 함수 호출 m_PanTiltCtrl.InitControl(GetAppImagePath(), this); m_PanTiltCtrl.SetBackgroundColor(RGB(32, 35, 54)); 컨트롤에서 사용되는 2개의 png 파일이 필..
설정 시간 이후 깨어나서 필요한 동작을 수행하도록 한다. 요즘 추세는 WAKEUP 을 하지 않고 WorkManager 를 이용하라고는 하지만 여전히 잘 동작하고 옛날 방식이 더 편한 감도 있다. AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); Intent newIntent = new Intent(Constants.DELAYED_ALARM_WAKE_UP); newIntent.setPackage(getPackageName()); PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, newIntent, PendingIntent..
x, y 의 좌표를 알고 있을 때 각도구하는 식 ? = atan2(Y, X) * 180 / 3.14 A 또는 B 와 같은 위치의 좌표를 알고 있을 때 원점 기준 50 만큼 떨어진 곳의 좌표을 얻어야 할 때 식 x = cos(radian) * 50; y = sin(radin) * 50; radin 값은 A 의 좌표 값을 위에 있는 식으로 각을 구한 뒤 아래 공식으로 구함.. radian = 각도 * PI / 180.0f;
컨텍스트 메뉴를 띄울 버튼이나 마우스 클릭 이벤트 핸들러를 추가 후 다음과 같이 사용하여 띄운다. void CMainWnd::OnRButtonDown(UINT nFlags, CPoint pt) { CGCSContextMenu cm; // ::GetCursorPos(&pt); // ::ScreenToClient(pThis->GetSafeHwnd(), &pt); cm.CreatePopupMenu(); // cm.AddMenu(커맨드ID, 메뉴텍스트, 메뉴 아이콘 이미지 파일 경로); cm.AddMenu(4000, _T("메뉴1"), _T("메뉴1용 아이콘 파일 전체경로")); cm.AddMenu(4001, _T("메뉴2"), _T("메뉴2용 아이콘 파일 전체경로")); cm.ShowPopupMenu(pare..
별도로 생성된 스레드에서 대상 윈도우의 DC 로부터 비트맵을 복제 후 ffmpeg 으로 인코딩 하여 파일로 저장한다. const double frameInterval = 1000.0 / 30; int calcInterval = 0; BYTE *pImageData = NULL; HDC hdcMemory = NULL; BITMAPINFO *pDibBitmapInfo = &(m_DibBitmapInfo); HBITMAP hDibBitmap = NULL, hOldBitmap = NULL;; LONGLONG nFrameCnt = 0; LONGLONG nStartTs = 0; DWORD dwSleep = 0; int startX = pThis->m_TargetRect.left; int startY = pThis->..
// Manifest Activity 의 속성 추가 // 가로 모드 setRequestedOrientation(Build.VERSION.SDK_INT < 9 ? ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE : ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE); // 세로 모드 setRequestedOrientation(Build.VERSION.SDK_INT < 9 ? ActivityInfo.SCREEN_ORIENTATION_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
# Header #pragma once #include #define MAX_DATA_LENGTH1500 class CUdpSocket { public: CUdpSocket(); ~CUdpSocket(); friend class CUdpServer; enum EResultCode { EUDP_NO_OPERATION = -2, EUDP_GENERAL_FAIL = -1, EUDP_SUCCESS = 0, EUDP_INVALID_DATA, EUDP_MAX_DATA_LENGTH_OVER, EUDP_CANCELED = WSAEINTR,// blocking operation canceled by WSACancelBlockingCall() EUDP_BAD_SOCKET = WSAEBADF,// bad socket des..
int GetSelectedItemIndex() { POSITION pos = m_lstView.GetFirstSelectedItemPosition(); if (pos == NULL) { return -1; } else { while (pos){ // 다중 선택으로 설정된 경우 반환 값을 리스트에 담아 리턴하도록 수정하면 됨. return m_lstView.GetNextSelectedItem(pos); } } return -1; }
안드로이드 P 이상에서는 전체 화면 시 다음과 같이 Activity 의 window 속성을 설정하여 전체화면 시 노치 영역까지 가득 채우게 해준다. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { Window wnd = getWindow(); if (wnd != null) { wnd.getAttributes().layoutInDisplayCutoutMode = WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES; } }
아래 코드 처럼 2개의 뷰를 시간차를 두고 에니메이션이 start 되는 상황에서 다른 activity 로 이동했다가 복귀 시 2개의 뷰 에니메이션이 시간차를 두지 않고 겹쳐서 에니메이션되는 현상 발생. 뷰를 Gone 시키는 코드도 안먹고 에니메이션 cancel 도 안되고 그랬으나 구글링 해보니 alpha 값을 0 으로 설정하면 사라진다는 글을 보고 적용해봤더니 정말 사라짐. @.@ void onResume() { ImageView iv_o2Circle = findViewById(R.id.iv_o2Circle); if (iv_o2Circle != null) { setViewAnimation(R.anim.ani_fade, iv_o2Circle); final ImageView iv_o2Circle2nd = f..
대상 Listview 에 아래 속성을 추가해준다. Divider 를 없에더라도 dividerHeight 속성은 작동하므로 아이템간의 간격을 조정이 가능하다. android:divider="@null" android:dividerHeight="15dp"