Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
Flat Form 만들기..?
일반적인 Form이 약간은 3D로 보니잖아요
이걸 Flat. 그러니깐 Form Style을 None으로 한것같이 표현 하고 싶어요
(None이면 타이틀바가 안나와서) 좀 구현 방법 좀 알려 주셔요
2
COMMENTS
최용일
•
2000.04.29 09:54
안녕하세요. 최용일입니다.
다음과 같이 윈도우 영역을 3D영역을 제외한 폼의 영역을 재설정하시면 플랫스타일의
크기조절이 가능한 폼을 만드실 수 있습니다.
// 폼의 OnCreate이벤트
procedure TForm1.FormCreate(Sender: TObject);
var
HRegion: THandle;
begin
// 현재의 윈도 영역에서 3D프레임을 제거한다.
HRegion := CreateRectRgn(2, 2, Width - 2, Height - 2);
SetWindowRgn(Handle, HRegion, True); // 새로운 윈도우 영역을 설정한다.
end;
// 폼의 OnResize 이벤트
procedure TForm1.FormResize(Sender: TObject);
var
HRegion: THandle;
begin
// 현재의 윈도 영역에서 3D프레임을 제거한다.
HRegion := CreateRectRgn(2, 2, Width - 2, Height - 2);
SetWindowRgn(Handle, HRegion, True); // 새로운 윈도우 영역을 설정한다.
end;
^^ 항상 즐코하세요.
김혜원 wrote:
> 일반적인 Form이 약간은 3D로 보니잖아요
>
> 이걸 Flat. 그러니깐 Form Style을 None으로 한것같이 표현 하고 싶어요
>
> (None이면 타이틀바가 안나와서) 좀 구현 방법 좀 알려 주셔요
0
0
삭제
수정
댓글
김일영
•
2000.04.29 08:57
능력이 안되어서... 크기 조절 가능하게는 못하고 타이틀바만 일부 기능을 흉내낸 것을
올려 드립니다. 참고로 이 소스는 나이렉스 인터내셔날에서 개발한 채팅 도우미 '투덜이'
소스에서 거의 그대로 인용한 것입니다.
CreateParams를 조정하는 것으로는 도저히 Form Style을 bsNone으로 한 것과
똑같이 할 수는 없더군요. 그래서 Form Style은 bsNone으로 했습니다.
그래서 크기 조절은 안되는 상태입니다.
이나마 참고가 되시길.
우선 .dfm 파일:
object Form1: TForm1
Left = 192
Top = 107
BorderStyle = bsNone
Caption = 'Form1'
ClientHeight = 613
ClientWidth = 862
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Panel1: TPanel
Left = 0
Top = 0
Width = 862
Height = 22
Align = alTop
Color = clActiveCaption
TabOrder = 0
object MinBtn: TSpeedButton
Left = 810
Top = 4
Width = 16
Height = 14
Anchors = [akTop, akRight]
Caption = '0'
Font.Charset = SYMBOL_CHARSET
Font.Color = clWindowText
Font.Height = -9
Font.Name = 'Marlett'
Font.Style = []
ParentFont = False
Spacing = 0
OnClick = MinBtnClick
end
object MaxBtn: TSpeedButton
Left = 826
Top = 4
Width = 16
Height = 14
Anchors = [akTop, akRight]
Caption = '1'
Font.Charset = SYMBOL_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Marlett'
Font.Style = []
ParentFont = False
Spacing = 0
OnClick = MaxBtnClick
end
object CloseBtn: TSpeedButton
Left = 844
Top = 4
Width = 16
Height = 14
Anchors = [akTop, akRight]
Caption = 'r'
Font.Charset = SYMBOL_CHARSET
Font.Color = clWindowText
Font.Height = -9
Font.Name = 'Marlett'
Font.Style = []
ParentFont = False
Spacing = 0
OnClick = CloseBtnClick
end
end
object ApplicationEvents1: TApplicationEvents
OnActivate = ApplicationEvents1Activate
OnDeactivate = ApplicationEvents1Deactivate
Left = 8
Top = 32
end
end
그리고 .pas 파일:
unit border;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
AppEvnts, ExtCtrls, Buttons;
type
TForm1 = class(TForm)
Panel1: TPanel;
ApplicationEvents1: TApplicationEvents;
MinBtn: TSpeedButton;
MaxBtn: TSpeedButton;
CloseBtn: TSpeedButton;
procedure ApplicationEvents1Activate(Sender: TObject);
procedure ApplicationEvents1Deactivate(Sender: TObject);
procedure MinBtnClick(Sender: TObject);
procedure MaxBtnClick(Sender: TObject);
procedure CloseBtnClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.ApplicationEvents1Activate(Sender: TObject);
begin
Panel1.Color := clActiveCaption;
end;
procedure TForm1.ApplicationEvents1Deactivate(Sender: TObject);
begin
Panel1.Color := clinActiveCaption;
end;
procedure TForm1.MinBtnClick(Sender: TObject);
begin
Application.Minimize;
end;
procedure TForm1.MaxBtnClick(Sender: TObject);
begin
if WindowState <> wsMaximized then begin
ShowWindow(Handle, SW_SHOWMAXIMIZED);
TSpeedButton(Sender).Caption := '2';
end
else begin
ShowWindow(Handle, SW_RESTORE);
TSpeedButton(Sender).Caption := '1';
end;
end;
procedure TForm1.CloseBtnClick(Sender: TObject);
begin
Close;
end;
end.
이상입니다.
=======================================================================
김혜원 wrote:
> 일반적인 Form이 약간은 3D로 보니잖아요
>
> 이걸 Flat. 그러니깐 Form Style을 None으로 한것같이 표현 하고 싶어요
>
> (None이면 타이틀바가 안나와서) 좀 구현 방법 좀 알려 주셔요
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
이현신
•
2000.04.28 21:28
1
COMMENTS
/
0
LIKES
지펜놀노 압축하기 같이.. 마우스 오른쪽 누루면 나오는메뉴에 추가하려면?.
최용일
•
2000.04.29 10:12
안녕하세요. 최용일입니다. Context Menu Handler를 만드시면 됩니다. 기본적으로 IContextMenu와 IShel...
조유정
•
2000.04.28 20:39
1
COMMENTS
/
0
LIKES
퀵리포트의 미리보기화면을 파일로 저장할수 있을까요??? 꼭 답변 부탁드립니다...
조규춘
•
2000.04.28 22:27
조규춘이라고 합지요 같은 조씨 군요~! 푸히히히 퀵리포트로 저장할수 있는 것은 아래와 같이 3가지...
이규학
2000.04.28 20:31
0
COMMENTS
/
0
LIKES
잘못된 연산 수행 ???
김성훈
2000.04.28 20:25
0
COMMENTS
/
0
LIKES
프린터 파일 출력문의
knight
•
2000.04.28 20:10
1
COMMENTS
/
0
LIKES
다국어 입력처리 문제
최용일
•
2000.04.29 10:35
안녕하세요. 최용일입니다. 될지 안될지는 모르겠는데 일본어 IME를 설치해 보세요. MS의 홈페이지에 가...
신승욱
•
2000.04.28 22:38
4
COMMENTS
/
0
LIKES
인터베이스에서.........QUERY에 대한 질문입니다.
ACCESS
•
2000.04.28 21:51
신승욱 wrote: > 여러 고수님들...안녕하십니까..... > 다름이 아니오라....인터베이스에서 query문을 ...
신승욱
•
2000.04.28 22:40
여러 고수님들...안녕하십니까..... 다름이 아니오라....인터베이스에서 query문을 적을때, 예를 들어 ...
^^;
•
2001.01.06 07:37
신승욱 wrote: > 여러 고수님들...안녕하십니까..... > 다름이 아니오라....인터베이스에서 query문을 ...
오현수
•
2000.04.30 01:42
신승욱 wrote: > 여러 고수님들...안녕하십니까..... > 다름이 아니오라....인터베이스에서 query문을 ...
서영
•
2000.04.28 19:51
1
COMMENTS
/
0
LIKES
파일명을 변경할려면요....
최용일
•
2000.04.29 10:30
안녕하세요. 최용일입니다. 아래와 같이 코딩해서 사용하세요. var SR: TSearchRec; F: File; ...
최 소 영
•
2000.04.28 19:36
2
COMMENTS
/
0
LIKES
용일님...봐주세요.... 또 vcl..T,T
이재원
•
2000.05.02 17:00
Project : Options : Directories 에 Search Path에다가 Component이 있는 경로를 넣고 한번 해보세요.
최용일
•
2000.04.28 19:50
안녕하세요. 최용일입니다. 그럴리가 없는데 정말 이상하군요. 저도 델파이 5를 사용하니까 저에게 zc컴...
김혜원
•
2000.04.28 19:32
2
COMMENTS
/
0
LIKES
Flat Form 만들기..?
일반적인 Form이 약간은 3D로 보니잖아요 이걸 Flat. 그러니깐 Form Style을 None으로 한것같이 표현 하고 싶어요 (None이면 타이틀바가 안나와서) 좀 구현 방법 좀 알려 주셔요
최용일
•
2000.04.29 09:54
안녕하세요. 최용일입니다. 다음과 같이 윈도우 영역을 3D영역을 제외한 폼의 영역을 재설정하시면 플랫...
김일영
•
2000.04.29 08:57
능력이 안되어서... 크기 조절 가능하게는 못하고 타이틀바만 일부 기능을 흉내낸 것을 올려 드립니다. 참...
김희준
2000.04.28 19:29
0
COMMENTS
/
0
LIKES
LPT 포트를 사용하여 통신하는 법???
김수정
2000.04.28 19:26
0
COMMENTS
/
0
LIKES
이상하네요? 모니터의 종류에 따라 ToolBar의 크기가 변하는 이유는...?
윤영균
•
2000.04.28 19:02
1
COMMENTS
/
0
LIKES
SYSTEM UPGRADE의문
김일영
•
2000.04.29 07:39
다른 것은 모르겠고 저의 경험으로만 보면, BDE로 붙이는 쪽이 문제가 됩니다. 일단 oracle 7에선 SQL N...
상아
•
2000.04.28 18:55
2
COMMENTS
/
0
LIKES
select 문장을 어떻게 하면....
정병근
•
2000.04.28 19:05
상아 wrote: > sql 문장을 어떻게 하면 좋을까요... > 만약에 A,B,C 라는 다른 테이블(자료)가 있다고 ...
상아
•
2000.04.28 19:50
정말 간단하네요... 정말 모르는게 병입니다... 많은 도움 됐습니다... 다시 한번 감사드립니다.
타락천사
2000.04.28 18:47
0
COMMENTS
/
0
LIKES
폼디자이너가 이상해여.... ㅠㅠ
정회원
2000.04.28 18:37
0
COMMENTS
/
0
LIKES
초보 ..form테두리에 선?
천년지기
2000.04.28 16:54
0
COMMENTS
/
0
LIKES
인터베이스를 인스톨쉴드에 포함하려면.....
changhwan
•
2000.04.28 14:43
2
COMMENTS
/
0
LIKES
고수님들 간곡히 부탁 드립니다 급해용
유도삼
•
2000.04.28 17:22
changhwan wrote: > 다름이 아니라 > 수십개의 각각의 이미지들에다가 각각의 OnClick 이벤트를 주었는...
changhwan
•
2000.04.29 02:40
정말 감사드립니다 . 유도삼님 좋은 하루 되시구요 좀전에 성급하게 매일 보낸거 사과 드리구 정말 우...
이상학
•
2000.04.28 13:21
1
COMMENTS
/
0
LIKES
서버의 시간 알아오는방법은 어떤 거에요?
김일영
•
2000.04.29 04:31
다른 DB는 모르겠습니다만, Oracle이라면 select SYSDATE from DUAL; (물론 대소문자는 상관없습니다.) ...
이수정
•
2000.04.28 08:53
1
COMMENTS
/
0
LIKES
인터넷 익스플로러에 채널(?) 버튼 추가 하는데, 버튼은 생기는데, url이 안먹혀요!!!
최용일
•
2000.04.29 03:34
안녕하세요. 최용일입니다. 스크립트에 관한것은 저도 잘 모르는데 RealPlayer처럼 실행파일을 이용하거...
nubigo
•
2000.04.28 08:30
1
COMMENTS
/
0
LIKES
sql문 에러...
정병근
•
2000.04.28 20:23
nubigo wrote: > 수고 많습니다. > 얼마전부터 델파이 작업을 하면서 많은 도움을 받고 있습니다. > >...
김혜원
2000/04/28 19:32
Views
218
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
다음과 같이 윈도우 영역을 3D영역을 제외한 폼의 영역을 재설정하시면 플랫스타일의
크기조절이 가능한 폼을 만드실 수 있습니다.
// 폼의 OnCreate이벤트
procedure TForm1.FormCreate(Sender: TObject);
var
HRegion: THandle;
begin
// 현재의 윈도 영역에서 3D프레임을 제거한다.
HRegion := CreateRectRgn(2, 2, Width - 2, Height - 2);
SetWindowRgn(Handle, HRegion, True); // 새로운 윈도우 영역을 설정한다.
end;
// 폼의 OnResize 이벤트
procedure TForm1.FormResize(Sender: TObject);
var
HRegion: THandle;
begin
// 현재의 윈도 영역에서 3D프레임을 제거한다.
HRegion := CreateRectRgn(2, 2, Width - 2, Height - 2);
SetWindowRgn(Handle, HRegion, True); // 새로운 윈도우 영역을 설정한다.
end;
^^ 항상 즐코하세요.
김혜원 wrote:
> 일반적인 Form이 약간은 3D로 보니잖아요
>
> 이걸 Flat. 그러니깐 Form Style을 None으로 한것같이 표현 하고 싶어요
>
> (None이면 타이틀바가 안나와서) 좀 구현 방법 좀 알려 주셔요