본문 바로가기

델파이474

델파이 유용한 함수정리 4탄 델파이 유용한 함수정리 4탄 TTreeView에서 node마다 Hint사용하기 메인메뉴나 기타 다른용도로 TTreeView를 사용하다 보면 Node마다 Hint를 보여줘야하는 경우가 있습니다. 이때 프로그램에 흐름은 Hint내용을 보관할 변수가 있어야 하고 그 변수를 초기화(TTreeView에 적용)하고 Hint내용을 변경하여 보여주는 단계로 이루어집니다. //선언부 PRec = ^TRec; TRec = record Name: string; //TTreeNode를 동적으로 생성할 때 보여주는 이름 Hint: string; //TTreeNode마다 가지는 Hint end; //초기화부분 - FromCreate나 FormShow이벤트등에 코딩하면 됩니다. var RecPtr: PRec; TNNode1: TT.. 2021. 7. 5.
델파이 유용한 함수정리 3탄 델파이 유용한 함수정리 3탄 초를 시분초로 분할 function ssTohhnnss(value: double): string; var r, r1,r2: double; begin r:= Value; r1:= Trunc(r / 60); //분 r2:= Trunc(r1 / 60); //시 r:= r - (r1 * 60); r1:= r1 - (r2 * 60); result:= FloatToStr(r2) + '시 ' + FloatToStr(r1) + '분 ' + FloatToStr(r) + '초'; end; 초값으로 정지하기 TTime없이 선언부 procedure Sleep(SleepSecs : Integer); 코딩부 procedure TForm1.Sleep(SleepSecs : Integer); var Sta.. 2021. 7. 2.
델파이 문자열을 거꾸로 변환하는 함수 델파이 문자열을 거꾸로 변환하는 함수 ReverseString(Str:String) Delphi 7 이후 버전에만 가능 System.StrUtils.ReverseString 상위까지 : System.StrUtils 델파이 function ReverseString ( const AText : string ) : string ; / * 오버로드 * / ; 속성 유형 시계 출처 단위 부모의 함수 공공의 System.StrUtils.pas System.StrUtils.hpp System.StrUtils System.StrUtils 기술 지정된 문자열의 반대를 반환합니다. ReverseString 은 AText에서 지정한 문자열을 역순으로 반환합니다. 2021. 7. 1.
델파이 BitBlt 함수 설명 델파이 BitBlt 함수 설명 일단 폼에 메모를 하나 붙이시구요... 버튼도 하나 붙이세요... 글구... 버튼의 OnClick 이벤트에다가 아래와 같이 코딩하시구요... procedure TForm1.Button1Click(Sender: TObject); var FBitmap: TBitmap; FDC: hDC; begin FDC := GetDC(Memo1.Handle); FBitmap := TBitmap.Create; FBitmap.LoadFromFile('C:\aaa.bmp'); BitBlt ( FDC, 0, 0, Width, Height, FBitmap.Canvas.Handle, 0, 0, SRCAND ); ReleaseDC(Handle, FDC); FBitmap.Free; end; 2021. 6. 30.
델파이 ord chr 함수 델파이 ord chr 함수 mpassword := mpassword + chr(ord(copy(vpassword,i,1))+1); --> Copy(..)함수는 String형을 되돌려줍니다. 그런데 Ord(..) 함수는 Ordinal 형을 요구합니다. 그러므로 당연히 에러가 나겠죠. Ordinal 형은 0-255 까지의 서수값을 나타냅니다. 보통 1Byte 짜리 Char형을 인자로 받아들입니다. 아래와 같이 적용하셔야 합니다. 문자열도 넓게보면 문자의 배열이므로 아래와 같이 그 위치의 문자값을 받아 Ord(..)함수로 BYTE형의 값으로 바꿔 님께서 하실려는것처럼 +1을 하셔서 Chr(..) 함수로 다시 문자로 바꾼것입니다. mpassword := mpassword + chr(ord(vpassword[i].. 2021. 6. 29.
델파이 날짜 시간 유틸 함수모음 델파이 날짜 시간 유틸 함수모음 uses DateUtils 델파이에 날짜함수를 모아둔 DateUtils.pas 가 있습니다. 머... 다들 알고있겠지만...^^ DateUtils.pas의 내용이 정리된게 없는거 같아서 나름 정리해서 올립니다. 있는지 몰라서 만들어 쓰던 함수들이 ... 여기 몇몇 보이더군요. 왠만한 날짜 처리는 다 될것 같고... 담에 또- 다른 SysUtils.pas를 정리해서 올리겠습니다. ^^ //일자를 추출한다. function DateOf(const AValue: TDateTime): TDateTime; //시간을 추출한다. function TimeOf(const AValue: TDateTime): TDateTime; //평년,윤년을 구분하다. function IsInLeapYe.. 2021. 6. 28.
델파이 유용한 함수정리 3탄 델파이 유용한 함수정리 3탄 -내장함수- 정수및 실수 관련 함수 시작 Int(Float) 설명 실수값에서 소수부분을 버리고(반올림안함) 정수부분만 구한후 출력한다. 출력값의 데이타형은 실수형이다. 사용 ShowMessage(FloatToStr(Int(3.13333))); // 3 출력 ​※ FloatToStr 대신 IntToStr를 사용하면 에러가 난다. 왜냐하면 원데이타가 실수값이기 때문이다, Trunc(Float) 설명 : 실수는 무조건 버리고 정수만 리턴하는 함수 Frac(Float) 설명 실수값에서 정수부분을 버리고 실수부분만 구한후 출력한다. 출력값의 데이타형은 실수형이다. 사용 ShowMessage(FloatToStr(Frac(3.13333))); // 0.13333 출력 byte(char) .. 2021. 6. 25.
델파이 showmodal 리턴받기 ShowModal로 띄운 폼에서 리턴값을 받을려면 Close()를 사용하지 않습니다. Close()대신 ModalResult에 mrOk, mrCancle, .... 을 넣어주면 바로 폼이 Close됩니다. 2021. 6. 24.
델파이 유용한 함수정리 2탄 델파이 유용한 함수정리 2탄 WinExec() 설명 원 하는 실행파일(외부명령어 파일,EXE 파일)을 실행시킨다. 원도우의 시작버튼>실행에 열기부분에 입력하여 확인버튼을 누른 효과와 같다. 첫번째 파라미터는 실행명 령 문자열이며 두번째 파라미터는 실행형태 타입값이다. ※ 첫번재 파라미터가 문자열값이 아닌 문자열 변수라면 사용시 PChar()로 감싸주어야 한다. procedure TForm1.Button1Click(Sender: TObject); var value:string; begin value:='c:\lee.exe'; WinExec(PChar(value), SW_NORMAL); end; 사용방법 -- 원하는 주소로 브라우저창 열기 winexec(`explorer http://www.daum.net`.. 2021. 6. 23.
델파이 유용한 함수정리 1탄 델파이 유용한 함수정리 Delphi useful functions Int(Float) 설명 실수값에서 소수부분을 버리고(반올림안함) 정수부분만 구한후 출력한다. 출력값의 데이타형은 실수형이다. 사용 ShowMessage(FloatToStr(Int(3.13333))); // 3 출력 ※ FloatToStr 대신 IntToStr를 사용하면 에러가 난다. 왜냐하면 원데이타가 실수값이기때문이다, Trunc(Float) 설명 : 실수는 무조건 버리고 정수만 리턴하는 함수 Frac(Float) 설명 실수값에서 정수부분을 버리고 실수부분만 구한후 출력한다. 출력값의 데이타형은 실수형이다. 사용 ShowMessage(FloatToStr(Frac(3.13333))); // 0.13333 출력 byte(char) 설명 특.. 2021. 6. 23.
델파이 함수 RoundTo 델파이 함수 RoundTo uses Math 추가 원하는 자리수에서 반올림을 하는 함수 입니다 RoundTo(1234567, 3) 하게 되면 1234000 가 나오고 RoundTo(1.234, -2) 하게 되면 결과는 1.23 RoundTo(1.235, -2) 2021. 6. 22.
델파이 자주사용되는 함수/프로시저 델파이 자주사용되는 함수/프로시저 2021. 6. 21.
델파이 messagedlg 세가지버튼 처리 델파이 messagedlg 세가지버튼 처리 var buttonSelected : Integer; begin // Show a custom dialog buttonSelected := messagedlg('Custom dialog',mtCustom, [mbYes,mbAll,mbCancel], 0); // Show the button type selected if buttonSelected = mrYes then ShowMessage('Yes pressed'); if buttonSelected = mrAll then ShowMessage('All pressed'); if buttonSelected = mrCancel then ShowMessage('Cancel pressed'); 2021. 6. 21.
델파이 shl 과 shr 설명 델파이 shl 과 shr 설명 shr, shl은 논리연산자 or 비트연산자 각각 shift right, shift left 를 말한다. 011011 이라는 2진수가 있을때 shr 2 하면 000110 이렇게 오른쪽으로 두칸 쉬프트 된다. 011011 을 shl 2 하면 101100 이 된다. x shl y 에서 x를 y bit만큼 왼쪽으로 bitwise shift 한다. 이것은 곱하기와 나누기 효과를 낼 수 있는데요.. shl의 경우 x 곱하기 2의 y승 이 된다. 예를 들어.. 01101(10진수로 13)을 shl 1 했을때의 결과는 11010(10진수로 26)이 되므로 두배가 된 것을 알 수 있다. 이것은 활용하기 나름이구.. 어떤 코드로의 encode, decode할때 많이 쓰이기도 한다. 참고로 .. 2021. 6. 18.
모바일 개발을 위한 델파이 언어 -4- 델파이 XE4 버전에서는 iOS 및 ARM 컴파일러 지원을 위해, 기존의 델파이와는 다른 새로운 델파이 컴파일러를 도입했습니다. 기존 델파이 컴파일러와의 호환성을 위해 대부분의 문법들은 하위호환되지만 델파이로 모바일 개발을 하기 위해서는 알아두어야 할 주의해야 할 부분들이 상당히 많습니다. 현재 엠바카데로에서 델파이 프로덕트 매니저를 맡고 있는 마르코 칸투는 문서 "The Delphi Language for Mobile Development"에서 이러한 주의점들을 간략히 설명하고 있습니다. 모바일 개발을 생각하는 델파이 개발자들에게는 아주 중요한 문서이므로, 총 4회로 나누어 이 문서를 번역해서 올립니다. 이번 글은 그중 마지막, 네번째입니다. 기타 언어 변경들 문자열 타입 변경과 객체 메모리 관리 외에.. 2021. 6. 16.
모바일 개발을 위한 델파이 언어 -3- 모바일 개발을 위한 델파이 언어 -3- 델파이 XE4 버전에서는 iOS 및 ARM 컴파일러 지원을 위해, 기존의 델파이와는 다른 새로운 델파이 컴파일러를 도입했습니다. 기존 델파이 컴파일러와의 호환성을 위해 대부분의 문법들은 하위호환되지만 델파이로 모바일 개발을 하기 위해서는 알아두어야 할 주의해야 할 부분들이 상당히 많습니다. 현재 엠바카데로에서 델파이 프로덕트 매니저를 맡고 있는 마르코 칸투는 문서 "The Delphi Language for Mobile Development"에서 이러한 주의점들을 간략히 설명하고 있습니다. 모바일 개발을 생각하는 델파이 개발자들에게는 아주 중요한 문서이므로, 총 4회로 나누어 이 문서를 번역해서 올립니다. 이번 글은 그중 세번째입니다. 3. ARC: 자동 참조 카운.. 2021. 6. 15.
모바일 개발을 위한 델파이 언어 -2- 모바일 개발을 위한 델파이 언어 -2- 델파이 XE4 버전에서는 iOS 및 ARM 컴파일러 지원을 위해, 기존의 델파이와는 다른 새로운 델파이 컴파일러를 도입했습니다. 기존 델파이 컴파일러와의 호환성을 위해 대부분의 문법들은 하위호환되지만 델파이로 모바일 개발을 하기 위해서는 알아두어야 할 주의해야 할 부분들이 상당히 많습니다. 현재 엠바카데로에서 델파이 프로덕트 매니저를 맡고 있는 마르코 칸투는 문서 "The Delphi Language for Mobile Development"에서 이러한 주의점들을 간략히 설명하고 있습니다. 모바일 개발을 생각하는 델파이 개발자들에게는 아주 중요한 문서이므로, 총 4회로 나누어 이 문서를 번역해서 올립니다. 이번 글은 그중 두번째입니다. 2. 문자열 타입 문자열의 관.. 2021. 6. 14.
모바일 개발을 위한 델파이 언어 모바일 개발을 위한 델파이 언어 델파이 XE4 버전에서는 iOS 및 ARM 컴파일러 지원을 위해, 기존의 델파이와는 다른 새로운 델파이 컴파일러를 도입했습니다. 기존 델파이 컴파일러와의 호환성을 위해 대부분의 문법들은 하위호환되지만 델파이로 모바일 개발을 하기 위해서는 알아두어야 할 주의해야 할 부분들이 상당히 많습니다. 현재 엠바카데로에서 델파이 프로덕트 매니저를 맡고 있는 마르코 칸투는 문서 "The Delphi Language for Mobile Development"에서 이러한 주의점들을 간략히 설명하고 있습니다. 모바일 개발을 생각하는 델파이 개발자들에게는 아주 중요한 문서이므로, 총 4회로 나누어 이 문서를 번역해서 올립니다. 이번 글은 그 중 첫번째입니다. ​모바일 개발을 위한 델파이 언어 .. 2021. 6. 11.
델파이 집합, 열거형, 열거형루프, 객체형 델파이 집합, 열거형, 열거형루프, 객체형 델파이 집합, 열거형, 객체형 집합 - 여러개의 원소를 가질수 있고, 교집합/차집합 등의 연산을 할 수 있습니다. 원소를 표현할때는 '[' ']'기호를 이용합니다. type TMYEdges = set of ( deLeft, deTop, deRight, deBottom); var Edges: TMyEdges; begin Edges := [deLeft, deTop]; Edgeg := [deLeft, deTop] - [deLeft, deRight]; // = [deLeft] end; 열거형 : 개체 중에서 단 하나의 값만 가질 수 있습니다 type TMyEdgeStyle = ( desNone, desFlat, desRaised, desRaisedHeavy, desSu.. 2021. 6. 10.
객체지향 언어로서의 오브젝트 파스칼 -마지막편- 객체지향 언어로서의 오브젝트 파스칼 마지막편 ■상속성과 델파이 폼 새로운 프로젝트를 생성하면, 델파이는 새로운 폼을 보여준다. 코드 에디터의 새로운 프로젝트의 내용을 살펴 보면, 델파이가 폼에 대한 새로운 객체 클래스를 선언하고 새로운 폼 객체를 생성하는 코드를 만들어 낸다는 것을 알 수 있다. 그러면 초기에 생성되는 델파이의 코드를 살펴 보자. unit Unit1; interface uses Windows, Classes, Graphics, Forms, Controls, ... ; type TForm1 = class(TForm) {폼에 대한 새로운 클래스 선언} private { Private declarations } public { Public declarations } end; {클래스 선언부는 .. 2021. 6. 9.