- 프런트엔드
- UI/UX Engineer
- postman collection variables
- MFC
- Interaction developer
- postman html parse
- postman tests
- Java
- postman session
- Front-end developer
- postman csv
- Android
- 우수한 프런트 개발자
- postman
- web developer
- 좋은 개발자
- postman excel
- c#
- oracle
- Intellij
- postman automations
- postman collection
- LSL_Script
- solidity
- Android/iOS Developer
- C++
- 다빈치 리졸브
- Unity
- postman pre-request
- emplace_back
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Today
- Total
목록전체 글 (174)
david's daily developer note
함수 호출되는 시점에, 특정 키가 동작중인지, 중단되었는지 여부 및 키가 눌렸는지 체크한다. if ((GetAsyncKeyState(VK_SHIFT) & 0x8000) != 0){ return; } MS 공식 예제 while (GetMessage(&msg, nullptr, 0, 0)) { if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } switch (msg.message) { case WM_KEYDOWN: if ((GetAsyncKeyState(VK_ESCAPE) & 0x01) && bRunning) { Stop(); } break; } } Virtual-Key ..
메시지: WM_GETMINMAXINFO 구현: if(GetSafeHwnd() != NULL) { lpMMI->ptMinTrackSize.x = 500; lpMMI->ptMinTrackSize.y = 300; } else CBCGPMDIFrameWnd::OnGetMinMaxInfo(lpMMI);
클래스 전방 선언 개념을 정리한다. C++로 작성된 클래스 A와 클래스 B 가 있다. 그리고 A클래스는 B를 참조한다. 이를 위해서 우리는 A에서 B클래스 해더를 Include할 것이다. 그러나, #include 관계가 복잡하거나, 해비 참조 해더가 있다면(API 정의가 포함된 헤더와 같이..) 간단한 수정에도 참조하는 모든 파일이 다시 컴파일 될 것이다. 작은 프로그램이야 문제없지만 프로젝트가 몇 백개가 넘어가는 거대한 솔루션에서는.. 불편한 상황이다. 전방선언 (Forward declarations)을 사용하면 이러한 상황을 일부 회피할 수 있다. (전방선언의 좋은점은 참조하려는 해더파일에 변경이 생겨도 참조 하는 해더파일에서는 재컴파일이 이루어 지지 않는다는 점이다.) #include "A.h" c..
//선언 #include "atlcoll.h" CAtlMap myCatl; //키가 문자열인 경우 CAtlMapmyCatl; //키가 문자열이 아닌 모든 경우 //삽입 myCatl.SetAt(Key ,Value); //삭제 myCatl.RemoveKey(Key); myCatl.RemoveAll(); //검색 CAtlMap::CPair* pPair = myCatl.Lookup( Key ); // Key값으로 Value를 리턴(BOOL)한다. //시작위치 POSITION pos = myCatl.GetStartPosition(); //다음위치 myCatl.GetNext(POSITION); //리턴값 : CPair * myCatl.GetNextValue(POSITION); //리턴값 : Value
void CMyRichEditView::OnUpdateLineNumber(CCmdUI *pCmdUI) { int nLine = GetRichEditCtrl().LineFromChar(-1) + 1; CString string; string.Format(_T("Line %d"), nLine); pCmdUI->Enable(TRUE); pCmdUI->SetText(string); } 상기 코드는 CCmdUI 클래스를 사용하는 MSDN 예시이다. 코드에서 인자인 pCmdUI는 메인 메뉴를 가르키는 포인터이다. 관련하여 자주 쓰는 함수를 정리한다. CCmdUI::Enable 함수 : 메뉴 항목을 선택할 수 있게(TRUE) 또는 선택할 수 없게(FALSE)한다. CCmdUI::SetCheck 함수 : 메뉴 항목을 ..
BOOL MPM::IsFileExist( CString path ) { WIN32_FIND_DATAW FindData; HANDLE file = FindFirstFileW(path , &FindData); if(file == INVALID_HANDLE_VALUE) { FindClose(file); return FALSE; } FindClose(file); return TRUE; }
View 클래스 컨트롤 범위내에서, 마우스 우클릭에 의한 팝업메뉴 뛰우기, View클래스 메시지 WM_CONTEXTMENU 함수 afx_msg void OnContextMenu(CWnd* /*pWnd*/, CPoint /*point*/); void CMyCADAppView::OnContextMenu(CWnd* /*pWnd*/, CPoint point) { theApp.ShowPopupMenu(IDR_CONTEXT_MENU , point , this); } App클래스 void CMyCADAppApp::PreLoadState () { GetContextMenuManager()->AddMenu (_T("My menu"), IDR_CONTEXT_MENU); } MainFrame클래스 BOOL CMainFram..
두 벡터 (1, 0) , (0, 1)이 있다고 할 때, 아래의 벡터 특성으로~ 두 벡터간의 내적을 구할 수 있다. 다음은 위 수식을 C#으로 구현한 코드이다. Vector v1 = new Vector(0, 1); Vector v2 = new Vector(1, 0); double leftExpression = v1.X * v2.X + v1.Y * v2.Y; double theta = leftExpression / ( Math.Sqrt(Math.Pow(v1.X, 2) + Math.Pow(v1.Y, 2)) * Math.Sqrt(Math.Pow(v2.X, 2) + Math.Pow(v2.Y, 2)) ); double innerD = (double)(Math.Acos(theta) * (180 / Math.PI));..
일반적으로, 3D max를 이용하여, Object에 텍스쳐를 입히면,,, 하나의 이미지가 모든면에 펼쳐져서 발라진다. 각 면단위로 다른 텍스쳐를 바르려면, 약간은 복작한 과정을 거쳐야한다. 이번 포스팅에서는 3D max상에서 특정 Object의 각 면단위로 텍스쳐를 바르는 방법을 다룬다. 먼저 그림과 같은 Box를 하나 생성하자. 생성된 박스를 선택하고, 마우스 우측 버튼을 선택하고, 그림과 같은 Convert to Editable Poly를 선택한다. Modifier 탭에서(좌), Modifier List의 Unwrap UVW(중)를 선택하고, Edit버튼(우)을 클릭한다. 그럼. 아래 그림과 같은 Edit UVWs창이 뜬다. 좌측 Edit UVWs창에서 녹색 박스가, Box를 구성하는 면들인데, 우측..