공통 TJumpList 컴포넌트 사용하기

2020.01.30 13:50

김원경 조회 수:334

TJumpList

TJumpList 컴포넌트를 사용하면 윈도우 작업표시줄 아이콘의 팝업메뉴에서 바로가기 메뉴를 추가할 수 있습니다.

설계 시점에 바로가기 메뉴추가하기

1.  File > New VCL Forms Applicaton을 선택하여 새로운 프로젝트를 시작합니다.
 
2.  TjumpList 컴포넌트를 내려놓습니다.
 
3.  TaskList 속성을 선택하여 TaskList Editor를 띄웁니다.
 
4.  팝업메뉴에서 'Add..'를 선택합니다.
 

jumplist3.png

 

5.  아래와 같이  JumpListItem이 추가된 것을 확인하실 수 있습니다.

 

JumpList2.png

 

6.  선택한 JumpListItem에서  FriendlyName 속성은 표시될 메뉴 이름,Icon속성은 표시될 아이콘지정

     Path 속성에는 바로 실행될 프로그램을 연결합니다.

 

jumplist4.png

 

7.  Editor 창을 닫고 TjumpList 컴포넌트의  Enabled , AutoRefresh 속성들을 각각 True로 지정합니다.

 

8.  프로그램을 실행한 후  상태줄에 있는 프로그램 아이콘에서 오른쪽 마우스를 누르면  아래와 같이 표시됩니다.

 

jumplist5.png

 

9.  "테스트프로그램"을 클릭하면 설정해 놓은 프로그램이 바로 실행됩니다.

런타임시 바로가기 메뉴추가하기

1.  이번에는 동적으로 JumpList 컴포넌트에 바로가기 메뉴를 추가해 보도록 하겠습니다.

 

2.  화면에 버튼 컴포넌트를 추가합니다.
 
3.  버튼의 OnClick 이벤트 핸들러를 다음과 같이 구현합니다.
 

procedure TMainForm.Button1Click(Sender: TObject);

var

  Filename: string;

  jumpItem: TJumpListItem;

begin

  FileName := 'D:\201908_델파이과정\Win32\Debug\test.exe'; //실행하고 싶은 프로그램지정

  jumpItem := JumpList1.TaskList.add as TJumpListItem;

  jumpItem.FriendlyName := '테스트프로그램2';

  jumpItem.path := Filename;

end;

 

4.  프로그램을 실행하면 다음과 같이 바로가기 메뉴가 추가된것을 확인하실 수 있습니다.

 

jumplist7.png

 

 5.  별도의 카테고리를 추가하고 바로가기 메뉴인 "MyItem"을 추가하기위해 기존의 이벤트 핸들러에 코드를 

      추가합니다.

 

procedure TMainForm.Button1Click(Sender: TObject);

var

  Filename: string;

  jumpItem: TJumpListItem;

  CategoryIndex:integer;

begin

  CategoryIndex := JumpList1.AddCategory('MyCategory');

  JumpList1.AddItemToCategory(CategoryIndex,

  'MyItem','D:\201908_델파이과정\Win32\Debug\test.exe', '','');

 

  FileName := 'D:\201908_델파이과정\Win32\Debug\test.exe';

  jumpItem := JumpList1.TaskList.add as TJumpListItem;

  jumpItem.FriendlyName := '테스트프로그램2';

  jumpItem.path := Filename;

 

  JumpList1.UpdateList; 

end;

 

 

6.  프로그램을 실행하면 아래와 같이 추가된 카테고리, 그 카테고리안에 추가된 JumpList 항목을 확인 하실 수 있습니다.

 

jumplist8.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
 
 
 
 
 
 
번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 24817
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 23110
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 25117
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 31001
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 32036
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 27427
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 48481
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 185434
1123 [도서/PDF] 한 번에 개발하는 안드로이드&iOS 앱 with 델파이 1편 - 3장(실습).사원 정보 프로토타입 앱 관리자 2020.02.04 454
1122 [도서/PDF] 한 번에 개발하는 안드로이드&iOS 앱 with 델파이 1편 - 2장. 첫번째 모바일 앱 만들기 관리자 2020.02.04 564
1121 n [도서/PDF] 한 번에 개발하는 안드로이드&iOS 앱 with 델파이 1편 - 1장. 델파이 개발환경 둘러보기 관리자 2020.02.04 595
1120 [도서/PDF] 한 번에 개발하는 안드로이드&iOS 앱 with 델파이 1편 - 3장. 파이어몽키 이해하기 [2] 관리자 2020.02.04 542
1119 [고객사례-유틸리티, 델파이] SyncBackPro - 데이터 백업/동기화 솔루션 관리자 2020.02.04 452
1118 델파이 개발자를 위한 이더리움(Ethereum)! 관리자 2020.02.04 475
1117 윈도우10에서 활용 가능한 델파이만의 5가지 기능들 관리자 2020.02.04 1086
1116 [업데이트][패치][10.3.3] C++빌더 10.3.3 스레딩 및 TLS 패치 험프리 2020.02.03 331
1115 Delphi / C ++ Builder를 사용하여 Azure에서 MSSQL 데이터베이스 만들기 및 연결 험프리 2020.02.03 281
1114 이 달의 기술자료 - 2020년 02월 험프리 2020.01.31 316
1113 [고객사례-유틸리티, 델파이] ALLMediaServer - 미디어 컨텐츠 플레이 프로그램 관리자 2020.01.31 355
1112 [발표자료] 20200130 실제 사례로 살펴보는 소프트웨어 현대화 방안 file 관리자 2020.01.31 311
1111 [코드레이지2019] VCL 현대화: WinAPI, COM & Shell 인터페이스, WinRT 통합하기 김원경 2020.01.30 225
» TJumpList 컴포넌트 사용하기 file 김원경 2020.01.30 334
1109 데브기어 컴포넌트 컨버터 소개(마이그레이션 자동화 도구) 험프리 2020.01.29 604
1108 [코드레이지2019] 파이어몽키에서 사용자 정의 Message Box 디자인하기 김원경 2020.01.23 317
1107 파이어몽키에서 Message 대화상자 사용하기/Message 대화상자와 유사하게 폼 사용하기 file 김원경 2020.01.23 2445
1106 [업데이트][패치][10.3.3] RAD 스튜디오 10.3.3 아이폰 XS와 XR 디버깅 패치 험프리 2020.01.23 308
1105 [코드레이지 2019] 웹소켓(WebSocket)과 델파이 험프리 2020.01.22 1380
1104 프로젝트 경험을 통해 터득한 효과적인 마이그레이션 프로세스 file 험프리 2020.01.22 722