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

2012.01.19 00:54

박병일 조회 수:15438

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 21752
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 20384
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 22425
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 28178
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 29464
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 24797
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 45741
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 181289
43 [발표자료] 20171116 델파이/C++빌더 의료 개발 세미나 관리자 2017.11.17 335
42 [엠바카데로 온라인 세미나] 10.3 RIO를 확인하세요! 관리자 2018.11.14 334
41 [UX Summit 요약] 멀티플랫폼 앱에 가장 효과적인 UX 디자인 (Effective UX Design for Multiplatform Apps) 관리자 2020.11.10 333
40 [FMX] 파이어몽키 메시징 시스템을 이용해 프로세스 내에서 메시지를 등록하고 구독하는 방법 file 험프리 2017.09.01 333
39 스레드 사용시 로긴오류 나마 2020.09.03 328
38 [발표자료] 20150910 "RAD Studio 10 시애틀" 출시 기술 워크샵 관리자 2015.09.11 328
37 iOS 개발환경 설정이 잘 되지 않은 경우 체크사항 - iOS 버전 확인 필요 관리자 2019.07.11 323
36 [업데이트][핫픽스][10.3] C++툴체인 핫픽스 험프리 2019.01.25 322
35 RAD스튜디오와 델파이 – 원조 로우코드! 관리자 2020.10.23 320
34 [고객사례-유틸리티, 델파이] ALLMediaServer - 미디어 컨텐츠 플레이 프로그램 관리자 2020.01.31 318
33 이 달의 기술자료 - 2020년 03월 file 험프리 2020.02.28 314
32 개발자가 지원해야 하는 핵심 플랫폼들 관리자 2020.11.02 313
31 XML MAPPER 업데이트 관리자 2020.10.21 312
30 이 달의 기술자료 - 2020년 04월 험프리 2020.03.27 312
29 초대합니다! 새로운 RAD Studio : 윈도우 10 혜택을 누리세요! file 관리자 2015.08.28 312
28 [엠바카데로 UX SUMMIT] 눈여겨 봐야할 컨텐츠들! 관리자 2020.10.06 308
27 DELPHICON 2020, 곧 시작됩니다! file 관리자 2020.10.27 307
26 [개발팁] TBooleanHelper.ToString 그리고 TUseBoolStrs 관리자 2019.10.21 307
25 오래된 C++ 프로젝트 마이그레이션 하기 관리자 2019.09.05 307
24 검사(Audits)와 측정(Metrics) 기능을 이용 소스코드 표준과 규약 준수를 측정하고 개선할 수 있습니다. 험프리 2020.03.06 305