본문 바로가기
반응형

IT/델파이45

TRichEdit에서 기본 컨텍스트팝업메뉴(Context Popup Menu) 활성화 시키기 1. 개요 TMemo 컴포넌트에서는 마우스 오른쪽 버튼 클릭시 기본 컨텍스트 팝업 메뉴(실행취소/복사/붙여넣기 등등)가 기본 활성화 되는데 TRichEdit에서는 어떤 이유에서인지 기본 활성화가 되어 있지 않다. 기본 컨텍스트 메뉴를 선택적으로 활성화 시키는 방법을 알아 보자. 2. TRichEdit에 Context Menu 활성화를 위한 세팅 procedure RichEditPopupMenu(re: TRichEdit); const IDM_UNDO = WM_UNDO; IDM_CUT = WM_CUT; IDM_COPY = WM_COPY; IDM_PASTE = WM_PASTE; IDM_DELETE = WM_CLEAR; IDM_SELALL = EM_SETSEL; IDM_RTL = $8000; // WM_APP .. 2023. 2. 15.
TMonthCalendar의 특정날짜 마크하기 1. 개요 TDateTimePicker 또는 TMonthCalendar의 월력을 Open 했을 때 특정 지정된 날짜를 마킹하여 특정한 목적으로 사용자에게 알려 주어야 하는 경우가 있다. 기본 컴포넌트인 TMonthCalendar를 이용하여 원하는 날짜들에 마킹(볼드체)하는 방법을 알아보자 2. TMonthCalendar의 "OnGetMonthInfo" 이벤트 이 이벤트는 TMonthCalendar 컴포넌트에 새로운 월(Month)가 Display될 때 호출 되는데 화면에 노출되는 일자에 대한 특정한 속성을 초기화 하고자 할 때 사용된다.(예를 들어 일요일 토요일, 국경일 등에 대한 표식이 필요할 경우 등) 이 이벤트 호출을 통하여 특정한 날짜를 굵게(Bold)로 표시할 수 있다. // 표시된 달력의 1일.. 2023. 2. 15.
TIdHTTPServer 응답헤더(Response Header) 1. 개요 TIdHTTPServer를 이용한 간단한 웹서버 작성시 클라이언트 요청에 대한 응답(Response) 메시지 작성시 헤더에 처리 결과 값을 노출 핟다던가, 특정한 메시지를 전달하고자 하는 경우 헤더를 조작해야 하는 경우가 있다. TIdHTTPServer에서 헤더를 다루는 방법을 알아본다. 2. TIdHTTPServer 응답 헤더 다루기 TIdHTTPServer는 ServerCommandGet 이벤트에서 클라이언트에서 요청한 내용을 처리 하도록 하는데 이때 요청메시지인 TIdContext 를 받아서 처리하는 핸들러를 작성하여 처리한다. 응답 헤더를 다루기 위해서는 IdContext의 HandleRequest 핸들러에서 "AResponseInfo.CustomHeaders" 를 이용하여 조작할 수 .. 2023. 2. 15.
문자열에서 Null문자 제거하기 1. 개요 TInetHTTP (WininetHTTP Suite) 컴포넌트를 이용하여 웹페이지를 요청할때 응답 헤더가 이상하게 넘어오는 경우가 Delphi XE이상버전에서 발생 한다 예를 들어 INetHttp.QueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF)를 호출하여 얻은 응답 헤더에 "Content-Type"에 대한 문자열이 "'C'#0'o'#0'n#0't'#0'e'#0'n'#0't'#0 ..." 식으로 리턴 된다. 이 문자열을 직접 사용하고자 하면 문자열 변수에 다음과 같이 담게 되는데 ResponseHeader := INetHttp.QueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF); 그러면 결과는 자동으로 널 스트링을 인지하고 TypeCasting 되어서 Re.. 2023. 2. 15.
반응형