Delphi 델파이XE2의 VCL Styles 활용하기

2012.01.19 00:54

박병일 조회 수:15228

VCL Styles  ?

이전의 윈도우 화면들은 하나의 테마만을 지원하였습니다. 델파이 XE2에서는 여러 가지 스타일들을 제공하여 다양하고 멋진 윈도우 화면을 작성할 수 있으며 또한 새로운 스타일 타입을 생성하여 적용할 수 있는 VCL Styles을 지원합니다. TWinControl 및 TGraphicControl 컴포넌트들에 적용할 수 있습니다(단 TRibbonControl, TMainMenu, TPopupMenu등에는 적용되지 않습니다).

스타일리쉬한 Fish Facts 작성     

동일한 프로그램을 VCL Styles을 이용하여 다양한 스타일의 화면으로 보여주고, 새로운 스타일을 작성하여 적용하여 보겠습니다.

1.       File->New->VCL Forms Application 메뉴를 시작하여 프로젝트를 시작합니다.

2.       화면을 아래와 같이 디자인하여 컴포넌트들을 연결합니다.


컴포넌트

속성

TMainMenu

Item를 클릭하거나 컴포넌트를 더블클릭하여 다음과 같이 디자인합니다. 

TSQLConnection

Driver

InterBase

Driver.DataBase

C:\Program Files (86) \Common Files\CodeGear Shared\Data\DBDEMOS.GDB

Driver.UserName

sysdba

Driver.Password

masterkey(소문자)

LoginPrompt

False

TSQLQuery

SQL Connection

SQLConnection1

SQL

select * from biolife

T DataSetProvider

DataSet

SQLQuery1

T ClientDataSet

ProviderName

DataSetProvider1

TDataSource

DataSet

ClientDataSet 1

TDBGrid

DataSource

DataSource1

 

3.       메뉴 리스트에 있는 VCL Style들을 사용하기 위해서는 아 래와 같이 Project Option창에서 스타일들을 선택합니다.

 

4.                    File 의  Connect Active 메뉴의 OnClick 이벤트 핸들러를 디음과 같이 구현하여 데이터베이스와 연결합니다.

procedure TForm1.ConnectionActive1Click(Sender: TObject);

begin

  SQLConnection1.Connected := not SQLConnection1.Connected;

  ClientDataSet1.Active := not ClientDataSet1.Active;

  ConnectionActive1.Checked := SQLConnection1.Connected;

end;

 

5.       각 메뉴 항목의 OnClick 이벤트 핸들러를 구현하여 지정한 스타일로 표시합니다.

TStyleManager.SetStyle(' Aqua Graphite ');

TStyleManager.SetStyle(' Aqua Light Slate ');

TStyleManager.SetStyle(' Emerald Light Slate ');

TStyleManager.SetStyle(' Golden Graphite ');

TStyleManager.SetStyle(' Ruby Graphite ');

TStyleManager.SetStyle('Windows');

 

6.          프로그램을 실행하여 화면 스타일을 변경해 봅니다. 왼쪽은 원래의 윈도우 스타일이고 오른쪽은 Ruby Graphite Style를 선택한  화면입니다.


 
  

 

7.       이번에는 새로운 스타일을 만들어서 적용해 보도록 하겠습니다. 

 

8.                    Tools 메뉴에서  VclStyleManager 를 실행합니다. VclStyleManager는 VCL Styles를 새로 작성하거나 편집하기 위해서 사용합니다.

 

 

 

 

9.          아래와 같은 VclStyleManager 화면이 표시됩니다.

10.   File->Open 메뉴에서 “C:\Documents and Settings\All Users\Documents\RAD Studio\9.0\Styles ¥RubyGraphite.vsf  를 선택하면 스타일의 정보가 표시됩니다.

11.       File->New 메뉴를 선택하거나 Ctrl +N로 새로운 VCL Style을 작성합니다(Name을 My Graphite 로 설정합니다.)

              

12.       원하는 원하는 아이템들을 수정하고 C:\Documents and Settings\All Users\Documents\RAD Studio\9.0\Styles 에 MyGraphite.vsf 로 저장합니다. 여기서는 화면의 Caption->Image->Title->Caption->SysButtons->CaptionTitle의 Color를 노란색으로 변경하였습니다.

 

13.       프로젝트 Options에서 아래와 같이  My Graphite  라는 VCL Style이 추가된 것을 확인하실 수 있습니다.


14.       My Graphite를 선택하고 프로그램을 실행하여 메뉴에서  My Graphite  를 클릭하면 다음과 같이  작성한 스타일로 적용됩니다.

 

 


번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 8135
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 7836
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 10260
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 15352
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 17048
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 12792
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 32253
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 167881
40 TMS 파이어몽키용 테이블뷰 컴포넌트 출시 [1] 박병일 2012.02.07 7490
39 파이어 몽키 이퀼라이저 데모 동영상 박병일 2012.02.06 10015
38 파이어몽키 써드파티 라이브러리 ApeSuite file 박병일 2012.02.06 9072
37 파이어몽키 3D Text Editor file 박병일 2012.02.06 13862
36 Platforms Expert for XE2 Beta 2 file 박병일 2012.02.06 8294
35 파이어몽키를 이용하여 당구 게임을 시뮬레이션한 데모 file 박병일 2012.02.06 10593
34 델파이로 만든 구글 지오코딩 쎔플 입니다. 박병일 2012.02.06 10924
33 파이어 몽키를 이용한 공학 계산과 그래프 박병일 2012.01.28 11387
32 델파이 라이브러리 패스 에디터 file 박병일 2012.01.27 7002
31 RAD Studio Resource Center 박병일 2012.01.26 16343
30 파이어몽키 기반의 아이폰앱 개발에서 주소록 가져오기 박병일 2012.01.25 14364
29 델파이XE2 파이어몽키 기반 아이폰앱 개발에서 제스춰를 인식시키는 방법 박병일 2012.01.25 21981
28 파이어 몽키란 무었인가? 박병일 2012.01.19 11012
» 델파이XE2의 VCL Styles 활용하기 박병일 2012.01.19 15228
26 델파이 XE2의 DataSnap 서버와 OSX Client의 연동 박병일 2012.01.19 13468
25 델파이 XE2 로 아이폰 하드웨어 컨트롤 하기 박병일 2012.01.19 15428
24 델파이 XE2의 Namespace 문제 박병일 2012.01.19 8629
23 Delphi XE2에서 맥 애플리케이션을 만들어 보자 박병일 2012.01.18 12878
22 델파이 XE2로 아이폰앱 만들기 박병일 2012.01.18 12980
21 델파이 XE2로 만든 아이폰 앱 - TicTacToe file 박병일 2012.01.17 13887