델파이 엑셀 페이지레이아웃 너비 1페이지로 델파이에서 자료를 엑셀로 변환하고 vba 기능을 이용하여 엑셀을 제어하여 페이지 너비를 1페이지로 고정할 경우 oSheet.PageSetup.Zoom := False; oSheet.PageSetup.FitToPagesWide := 1; oSheet.PageSetup.FitToPagesTall := False; 델파이 2018.02.07
Delphi2007 "bordbk105N.dll" 오류 델파이2007을 윈도우10 에 설치하여 디버거깅 중 그림과 같은 bordbk105N.dll 에러가 발생하고 델파이2007이 종료된다. 해결방법은 embarcadero 를 방문하여 해당파일을 다운로드 받은 후 덮어 쓰면된다. 이때 델파이2007을 종료한 상태에서 덮어써야한다. https://cc.embarcadero.com/item/27521 위 파일은 윈.. 델파이 2018.02.04
TButton Style 종류와 TPopupMenu 연결 기본 버튼인 TButton은 그림처럼 3가지 Style 속성이 있다. 기본은 bsPushButton 이다. 다음은 버튼을 클릭했을 때 팝업메뉴를 연결한 모습이다. 그림1) procedure TForm3.Button1Click(Sender: TObject); begin //팝업메뉴가 현재 마우스커서 위치에 보인다. PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y); end; 그림2) pro.. 델파이 2017.08.24
TRichEdit 마우스위의 라인값, 행번호, 열번호 구하기 리치에디트의 마우스의 움직임에 따라 현재 행의 값과 행번호, 열번호를 구할 수 있다. procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var pt: TPoint; charindex, lineindex, charoffset: Integer; c: string; mask: integer; row, col: Integer; begin pt := Point(X, Y); charindex := p_reNote.Perform(Messages.EM_CHA.. 델파이 2017.08.14
TRichEdit url링크 TRichEdit 에 url 링크를 연결하는 것은 여기 저기 소스가 많지만 안정적으로 잘 되는 것은 다음과 같다. https://stackoverflow.com/questions/37790845/richedit-does-not-process-hyperlinks TRichEdit 를 TMyRichEdit로 변경했다. unit RichEditUrlTest; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, .. 델파이 2017.08.14
퀵리포트(TQuickReport) TDBGrid 선택된 것만 인쇄 OnNeedData 디비그리드(TDBGrid) 에서 다중 선택된 것 만 퀵리포트(TQuickReport)에서 인쇄할 때 두가지 방법이 있다 1. 퀵리포트에 데이터셋(DataSet)을 연결하여 사용할 경우 디테일 밴드의 OnBeforePrint 이벤트에 다음과 같이 작성한다. procedure TForm1.QRBand1BeforePrint(Sender: TQRCustomBand; var PrintBand: Boolean); begin if dbG.. 델파이 2017.07.12
스트링그리드(TStringGrid) 현재 행에 색깔 넣기, 교차행에 색깔 넣기, 포커스이동문제해결 1. 스트링그리드에 현재 행에 색깔 넣기 스트링그리드는 DBGrid는 RowSelect 속성이 있지만 색깔이 clHightlight 로 고정되어 있다. 또한 RowSelect 속성은 컬럼 인덱스가 0번째가 되는 특성이 있다. 행이 선택되어지면서 현재 선택된 컬럼인덱스를 이용해야한다면 DBGrid 에서는 dgMultiSelect 속성이 True 면 행이 하이라이트 되며 컬럼 인덱스도 현재 컬럼이 된다. 하지만 스트링그리드에는 MultiSelect 속성이 없으므로 다음과 같이 RowSelect 속성이 아닌 직접 행에 색깔이 넣어야한다. OnDrawCell 과 onClick 이벤트를 사용해야 한다. OnClick 에서 Refresh 하지 않으면 원할하지 않다. procedure TForm1.StringGrid.. 델파이 2017.06.21
초단위 반올림하여 분단위표현 SQL Server smalldate 형식과 같이 SQL Server 에서 smalldatetime 형식은 분단위까지 표현한다. (초단위는 00) 이때 초단위는 30초 미만은 버리고 30초이상은 분단위를 올림한다. 즉 15:12:29 -> 15:12:00 15:12:30 -> 15:13:00 델파이에서 분단위 시간을 화면에 표시하고 DB에 저장할 때 무심코 화면은 분단위까지 자르고 서버는 smalldate형식에 저장하면 델파이에서 TDatetime 형식인 vCurrent 변수에 현재 일시 '2022-05-01 15:12:30' 이 할당되어 있을 때 화면에 FormatDateTime('yyyy-mm-dd hh:nn', vCurrent) -> '2022-05-01 15:12' 까지만 잘라서 표현하고 DB에 저장하면 '2022-05-01 15:13:00' 이.. 델파이 2017.05.19
메인폼 숨기기 보이기 메인 폼을 숨겼다고 다시 보이게 해야 할때 유용하다. // 메인폼 숨기기 SendMessage (Application.Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0); ShowWindow(Application.Handle, SW_HIDE ); // 메인폼 보이기 SendMessage (Application.Handle, WM_SYSCOMMAND, SC_RESTORE, 0); ShowWindow(Application.Handle, SW_SHOW ); SetForegroundWindow( Application.Handle ); 델파이 2017.04.05