본문 바로가기

Programming

String.Split으로 토큰 단위로 파싱하기 C++에서는 strtok 계열의 함수를 사용해서 토큰 단위로 문자열을 나눌 수 있습니다.MFC에서는 AfxExtractSubString() 함수를 통해서 문자열을 토큰 단위로 나눌 수 있습니다.아래 링크를 클릭하면 AfxExtractSubString() 함수에 대한 내용을 확인할 수 있습니다.2015/06/22 - [Programming/Win32&MFC&COM] - CString 토큰(Token)으로 분리시키기(AfxExtractSubString)C#에서는 String.Split()으로 쉽게 파싱할 수 있습니다.C#에서 String.Split으로 문자열을 파싱하는 방법입니다. static void Main(string[] args) { string text = "ABC\nDEF\tGHI JKL"; ch.. 더보기
[XAML] 윈도우10 앱 ListView에 헤더(Header) 추가하기 XAML의 ListView에 헤더를 추가하는 방법입니다.관련된 자료가 많지 않기 때문에 편법으로 헤더를 추가했습니다.ListView위에 선택이 되지 않는 ListView를 하나 더 추가하는 방법을 사용했습니다.먼저 윈도우 10 앱 프로젝트를 생성합니다.Universal의 Blank App을 선택하고 프로젝트 이름을 입력하고 OK를 누르면 됩니다.프로젝트가 생성되면 MainPage.xaml을 엽니다. 와 사이에 다음과 같이 그리드를 나눠주는 코드를 추가합니다. 그리고 바로 아래에 헤더로 사용할 ListView를 추가합니다.선택이 불가능하도록 SelectionMode와 IsHitTestVisible을 속성을 사용합니다. 실행하면 헤더와 같이 상단에 추가되는 것을 확인할 수 있습니다.이제 실제 ListView.. 더보기
MFC에 플래시(Flash) ActiveX 컨트롤 추가하기 최근 웹에서 플래시를 많이 걷어내는 추세입니다.보안 등 여러 문제가 많이 발생하기 때문에 최근에는 잘 사용하지 않는 방향으로 개발을 합니다.그래도 swf 파일 등을 MFC에서 출력하는 상황이 생깁니다.MFC에 Flash 컨트롤을 추가해서 swf 파일을 재생하는 방법입니다.Visual Studio 2015를 기준으로 설명하도록 하겠습니다.먼저 MFC 프로젝트를 생성합니다.간단하게 테스트하기 위해 다이얼로그 기반 프로젝트로 생성합니다. MFC 라이브러리를 static으로 사용하는 것 외에 다른 설정은 변경하지 않았습니다.리소스 뷰(Resource View)의 다이얼로그를 열고 ActiveX 컨트롤을 추가합니다. 다이얼로그 화면에서 마우스 오른쪽 클릭하면 메뉴가 표시됩니다.Insert ActiveX Contr.. 더보기
zip 파일 압축/해제 방법 파이썬을 사용하면 zip 파일을 다루는 것이 편리합니다.라이브러리의 zipfile을 사용하면 간단하게 zip 파일을 생성하고 압축을 푸는 것이 가능합니다.zipfile을 사용한 압축과 압축해제 소스코드입니다. import zipfile import os def unzip(source_file, dest_path): with zipfile.ZipFile(source_file, 'r') as zf: zf.extractall(path=dest_path) zf.close() def zip(src_path, dest_file): with zipfile.ZipFile(dest_file, 'w') as zf: rootpath = src_path for (path, dir, files) in os.walk(src_pa.. 더보기
Visual C++ 확장 문법 property C#에는 property라는 개념이 존재합니다. 일반적으로 클래스에 변수가 추가될 때 protected나 private로 숨깁니다. 그리고 getter, setter를 통해서 값을 변경하고 가져오는 방법을 사용합니다. C#에서는 간편하게 자동 구현 프로퍼티를 통해서 변수 자체에서 get, set 기능을 추가할 수 있습니다. Visual Studio의 C++은 확장을 통해서 property 기능을 제공합니다. 표준 C++ 구현이 아니기 때문에 다른 컴파일러에서는 컴파일되지 않습니다. 사용 방법은 다음과 같습니다. #include class Percentage { public: void putPercent(int nVal) { nValue = nVal; } int getPercent() { return nV.. 더보기
파이썬(Python)을 위한 IDE 툴 Pycharm 파이썬을 설치하면 기본적인 에디터가 제공됩니다.다만 라인 단위의 디버깅이나 큰 모듈 개발 등이 어렵기 때문에 IDE가 필요합니다.파이참(Pycharm)을 설치하면 쉽게 파이썬 개발이 가능합니다.Pycharm은 IntelliJ, CLion 등을 제공하는 JetBRAINS에서 배포하는 프로그램입니다.아래 링크를 통해서 Python을 먼저 설치합니다.3버전대를 설치하는 것을 추천합니다.2015/06/04 - [Programming/Python] - 파이썬(Python) 설치 방법파이썬이 설치된 이후에 Pycharm을 설치하면 됩니다.아래 링크를 클릭하면 Pycharm 다운로드 페이지로 이동합니다.https://www.jetbrains.com/pycharm/download/커뮤니터 에디션(Community Ed.. 더보기
제어판의 전원 옵션 구현하기 제어판의 전원 옵션 메뉴에는 전원을 관리하기 위한 옵션들을 수정할 수 있습니다.기본적으로 균형 조정, 고성능, 절전의 옵션이 존재합니다. 일부 노트북이나 대기업 PC의 경우 다른 옵션이 있을 수도 있습니다.설정 변경에 들어가면 디스플레이 끄기 시간과 절전 모드로 진입하는 시간을 설정할 수 있습니다.그리고 고급 전원 관리 옵션 설정 변경(C)를 누르면 세부 설정이 가능합니다.이 설정을 직접 가져오고 수정할 수 있는 API가 제공됩니다.Power Management Reference는 아래 링크를 통해서 확인할 수 있습니다.https://msdn.microsoft.com/en-us/library/windows/desktop/aa373170(v=vs.85).aspx실제 값을 가져오기 위한 간단한 코드는 다음과.. 더보기
[C++] 윈도우10 앱 타이틀바 커스터마이징 윈도우10 앱의 타이틀바는 기본적으로 색상이 정해져 있습니다.윈도우10의 기본 앱인 스토어의 타이틀바는 흰 바탕에 검은색 글씨로 되어 있습니다.간단한 코드를 추가해서 타이틀바를 수정할 수 있습니다.먼저 간단하게 윈도우10 앱을 생성합니다.Blank App으로 생성을 했으며 프로젝트는 TitleBarDemo라는 이름으로 작성했습니다.MainPage.xaml 파일을 열고 태그 사이에 아래 코드를 추가합니다. MainPage.xaml.h 파일에 아래 코드를 추가합니다.타이틀바는 Windows::UI::ViewManagement::ApplicationViewTitleBar^를 통해서 접근할 수 있습니다. private: Windows::UI::ViewManagement::ApplicationViewTitleBa.. 더보기