델파이 추상화(abstraction)
델파이 추상화(abstraction) abstraction(추상화)라는 단어를 프로그래밍에 관한 책에서 한번쯤 들어봤을 것이다. 그런데, 대다수의 책이 이 단어의 의미를 매우 장황하고 어렵게 설명하기 때문에, 이해하기 어렵다. 추상화란 간단히 이야기하자면 다음과 같이 정의할 수 있다. 추상화(abstraction) "어떤 대상에 명칭(이름)을 부여하고, 그 대상의 성질을 파악하고 분류하려는 인간적 능력" 말이 어려운가? 달리 예를 들어 보자. "감정에는 아픔, 슬픔, 기쁨, 고통 등이 있다." 아픔, 슬픔, 기쁨, 고통은 실존하는 대상(물체)이 아니다. 그러나 우리 인간들은 이 실존하지 않는 애매한 개념에 이름을 붙이고 그것들을 분류하였다. 다시 말해서, 감정이란 대표 개념의 일부로서 아픔, 슬픔, 기쁨..
2024. 3. 26.
숫자에 콤마 찍어주기
숫자에 콤마 찍어주기 { ******************************************************************************** ** ** ** 숫자에 화폐단위 000,000,000~ 처럼 3단위로 콤마를 삽입시켜 준다. ** ** 999,999,999,999,999 단위 까지 가능함. 999조 ** ** ** ******************************************************************************** } Function Comma(I : Double) : String; var StrTmp : String; Cunt, J1, J2, K, L : Integer; Begin Cunt := 0; L := 3; StrT..
2024. 3. 9.
마우스 포인터 좌표의 윈도우 정보얻기
마우스 포인터 좌표의 윈도우 정보얻기 마우스 포인터가 있는 좌표의 윈도우의 핸들, 클래스, 명칭을 보여주는 예제입니다. unit unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Timer1: TTimer; Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure FormCreate(Sender: TObject); procedure Timer1Timer(Sender: TObject); private procedure ShowHwndAndClassName(C..
2024. 3. 1.
한글 초/중/종성 알아내기
한글 초/중/종성 알아내기 type TCVJ = packed record //초성 중성 종성의 번호를 저장할 구조체 C :integer; V :integer; J :integer; end; const //유니코드 한글 초성 순서표 UniCodeC : array [0..18] of string = ('ㄱ','ㄲ','ㄴ','ㄷ','ㄸ','ㄹ','ㅁ','ㅂ','ㅃ','ㅅ', 'ㅆ','ㅇ','ㅈ','ㅉ','ㅊ','ㅋ','ㅌ','ㅍ','ㅎ'); //유니코드 한글 중성 순서표 UniCodeV : array [0..20] of string = ('ㅏ','ㅐ','ㅑ','ㅒ','ㅓ','ㅔ','ㅕ','ㅖ','ㅗ','ㅘ', 'ㅙ','ㅚ','ㅛ','ㅜ','ㅝ','ㅞ','ㅟ','ㅠ','ㅡ','ㅢ', 'ㅣ'); //유니코드 한글..
2024. 2. 15.
폼 Border 없이 사이즈 변경
폼 Border 없이 사이즈 변경 폼이 Border 를 갖고 있지 않을 때 마우스가 경계에 오면 커서가 바뀌면서 ReSize 가 되게 하는 방법입니다. WM_NCHITTEST 를 가로채서 거기에서 마우스 좌표를 폼좌표계로 변환후 마우스 위치에 따라 메시지의 result 를 HTTOP, HTLEFT 등으로 바꿔주기만 하면 됩니다. 폼의 BorderStyle 를 bsNone 로 해서 경계를 없애준 뒤에 하면 됩니다. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton;..
2024. 2. 1.