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

2012.01.19 00:54

박병일 조회 수:15363

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 15417
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13960
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16496
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22049
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23267
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18921
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39245
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174696
543 [시애틀] FireDAC NoSQL 드라이버로 몽고DB를 완벽 지원합니다. Humphery 2015.09.04 971
542 [시애틀] 개발 효율성을 극대화할 수 있도록 멀티-모니터를 활용해 개발환경 레이아웃을 구축할 수 있습니다. Humphery 2015.09.04 645
541 [발표자료] 9월 3일 "사물인터넷 실제 구현하기, DeepDive" 관리자 2015.09.04 453
540 [시애틀] 알림, 계약(Contract) 등의 윈도우 10 서비스 기능을 컴포넌트와 API로 쉽게 활용할 수 있습니다. 험프리 2015.09.02 766
539 [시애틀] VCL 스타일이 공용 대화 상자와 웹브라우저까지 적용됩니다. Humphery 2015.09.02 477
538 [시애틀] VCL 스타일을 적용해 1분만에 윈도우 10 최신신 룩앤필을 적용할 수 있습니다. 험프리 2015.09.02 1234
537 [시애틀] 윈도우 10 용 새 VCL UI 컨트롤로 윈도우 10 UI를 손쉽게 적용할 수 있습니다. 험프리 2015.09.02 2381
536 초대합니다! 새로운 RAD Studio : 윈도우 10 혜택을 누리세요! file 관리자 2015.08.28 290
535 이 달의 기술자료 - 2015년 09월 file 험프리 2015.08.26 497
534 [다음 버전 정보] C++11을 32비트 윈도우 앱 개발에서 사용할 수 있습니다. Humphery 2015.08.25 553
533 [다음 버전 정보] 안드로이드 서비스로 백그라운드 작업을 실행할 수 있습니다. Humphery 2015.08.25 774
532 [앵콜세미나] 사물인터넷 실제 구현하기, DeepDive!: 비콘, 스마트조명, 블루투스 체중계 관리자 2015.08.19 525
531 20150811 사물인터넷 실제 구현하기 DeepDive 세미나 발표자료 관리자 2015.08.12 499
530 RAD Studio VCL/FMX 앱에 윈도우 10 스타일 적용하기 file 관리자 2015.07.30 842
529 [따라하기] 위험지역 경보 시스템 #1 - 위험지역 진입 경보앱 만들기 [1] Humphery 2015.07.30 3738
528 [사물인터넷 동영상] 위험 지역 경보 시스템 관리자 2015.07.28 504
527 [XE8] IDE 설정값을 내보내고 불러올 수 있어, 일관된 IDE 설정을 유지할 수 있습니다. file Humphery 2015.07.28 575
526 이 달의 기술자료 - 2015년 08월 험프리 2015.07.28 645
525 데이터스냅에서 제공하는 JSON 포맷 데이터 사용(분석)하기 [1] file Humphery 2015.07.20 3773
524 [XE8] 모바일 튜토리얼 무료 다운로드(영문), 총 364페이지 관리자 2015.07.09 1545