C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[28] 팁! 델파이와 C++빌더의 유용한 단축키
박지훈.임프 [cbuilder] 22947 읽음    1999-06-04 00:00
임프랍니다.. 오늘은 늦잠을 자는 바람에 팁을 준비를 못했습니다.
그래서.. 생각나는대로 델파이 및 빌더의 유용한 단축키들을 정리해 보겠습니다.

F12를 눌러 폼디자이너/유닛에디터를 토글하는 건 보통 잘 아시죠? 이와 비슷하게
컨트롤+F12를 누르면 유닛들의 리스트가 나오고 여기서 에디트할 유닛을 선택할 수
있습니다. 마찬가지로 시프트+F12는 폼들의 리스트를 보여줍니다. 어느정도 이상
큰 프로젝트를 수행할때 유닛과 폼들을 찾는데 아주 편리한 기능입니다.

또다른 비슷한 기능으로는.. F11하면 오브젝트 인스펙터가 나타납니다.
또 컨트롤+알트+F11 을 치면 프로젝트 매니저가 나오구요. 컨트롤+시프트+F11 하면
프로젝트 옵션이 나타납니다. 그냥 컨트롤+F11 하면 Add to Project 구요.

그다음으로 에디터에서 사용가능한 단축키들을 알아봅시다.
터보씨에서부터 계속 사용해왔던 단축키중에, 현재 위치를 기억했다가 한번에
점프하는 기능이 있습니다. 에디터에서 특정 위치를 기억하려면, 컨트롤+K 누르고
그다음에 숫자키를 하나 누르면 됩니다. 그러면 에디터의 왼쪽 회색부분에 녹색
사각형으로 둘러싸인 숫자 표시가 하나 나타납니다. 그런 후에 에디터의 다른
위치에 가 있다가 컨트롤+숫자키(앞에서 설정한 숫자)를 누르면 한번에 그 위치로
점프합니다. (컨트롤+Q 하고 숫자를 눌러도 됩니다.) 이런식으로 각 화일마다
숫자 10개를 모두 위치를 할당할 수 있습니다.

그리고 보통 사람들이 잘 모르는 유용한 기능으로, 세로 블럭 설정이 있습니다.
보통 IDE의 에디터에서 시프트+방향키로 블럭을 설정하면 가로방향으로 블럭이
설정이 되지요? 빌더에도 아래아 한글처럼 세로로(사각형 영역으로) 블럭을
설정하는 기능이 있습니다. 이것은 컨트롤+알트+방향키로 합니다. 이후로는 계속
세로로만 블럭이 설정되는데, 해제하려면 마우스로 드래그해서 일반 블럭을 한번
설정해주면 됩니다.

그외에.. 단축키는 아니지만 유용한 기능 몇가지를 소개해보겠습니다.
메인 윈도우의 왼쪽에 나타나는 툴바에서 마우스 오른쪽키를 누르면 팝업메뉴에
프라퍼티 항목이 있습니다. 이걸 클릭하면 빌더의 모든 풀다운메뉴 아이템들의 리스트
가 나옵니다. 여기서 빌더의 툴바 버튼들을 여러가지로 사용자가 편한 형태대로 꾸밀
수 있습니다. (마찬가지로 컴퍼넌트 팔레트에서 오른쪽 키를 눌러 나오는 프로퍼티
항목을 클릭하면 비슷하게 컴퍼넌트 팔레트를 커스터마이즈 할수 있습니다.)

자주 사용하지는 않습니다만, 폼을 텍스트 형태로 편집하는 것이 아주 편리할
때가 있습니다. 빌더가 폼 화일에서 에러를 내거나, 혹은 잘못된 폼파일을
불러들일때죠. 대표적인 예로, C++빌더에서 델파이 폼을 불러들였는데 빌더에서
TCSpinEdit로 이름이 다른 TSpinEdit 컴퍼넌트에서 에러가 날때입니다.
그냥 C++빌더에서 불러들이면 에러메시지 하나 나오고는 이 '알수 없는 컴퍼넌트
TSpinEdit'를 폼에서 없애 버립니다. 그래선 안되겠죠? 이럴때 유용한 것이 빌더의
컴맨드라인 툴 convert.exe 입니다. convert [폼이름].dfm 하면 이 화일을 텍스트형태로
변환해줍니다. 이 텍스트 화일에서 편집해서 일부를 수정한 후, 다시 convert [폼이름].txt
해주면 다시 폼으로 바꾸어줍니다.
(사실 빌더/델파이의 폼 화일 dfm은 이진화일이기는 합니다만 거의 텍스트화일에 가까운
단순한 구조로 되어있습니다.)

리파지터리를 많이 사용하십니까? 저는 리파지터리를 아주 많이 활용하고 있습니다.
보통 프로젝트 단위로 리파지터리에 넣어두면, 다음에 그와 똑같은 형태의 프로젝트를
구성할 때 아주 편합니다. 그냥 New 할때 나오는 선택 다이얼로그박스에서 불러오면
이전에 저장해뒀던 프로젝트가 그대로 나옵니다. 이정도는 그냥 혼자 갖고 놀면 금방
알 수 있습니다.

이와 비슷하게, 폼 하나만 리파지터리에 넣었다가 불러올 수 있습니다. 폼디자이너
에서 오른쪽 키를 눌러 나오는 메뉴중 Add to Repository 를 선택하면 다이얼로그박스
가 하나 뜨고, 여기서 이름과 리파지터리에서 나타날 페이지 등을 설정해주면,
다음번에 새 폼을 만들때 노가다로 만들지 않고 리파지터리에서 그냥 불러올 수
있습니다. 저의 경우엔, 가장 많이 사용하는 곳은 어바웃 박스입니다. 보통 각
프로그래머마다 어바웃 박스를 개성있게 꾸며서 그 모양을 그대로 사용하지요?
저도 저만의 어바웃 박스가 있습니다. 이 어바웃 박스를 리파지터리에 넣어놨다가
새로운 툴을 하나 만들때마다 불러서 사용합니다. 어바웃 박스 외에, 위자드 폼도
하나 넣어뒀습니다. 위자드폼은 자주 사용하는 것은 아니지만, 한번 만들려면 꽤
정성을 들여야 하니까요.

이런거 외에도, IDE의 숨겨진 기능이 많습니다. 제가 요즘 관심을 가지고 있는 것은
Inside Secrets of Delphi 3 Developer's handbook에 나온, 빌더 환경을 커스터마이즈
하는 비공식적인 방법들입니다. 이러한 방법들에 관심이 있으신 분들은 이 책을
사보실 것을 권합니다.

머리에서 생각나는대로 끄적거려봤습니다. 제가 자주 사용하는 기능들이 더 많이
있는데, 아시다시피 단축키나 특정 기능이란건 머리에 기억하는게 아니라 손에 기억
하는 거라서, 델파이나 빌더를 쓰면서 필요할땐 그냥 손이 알아서 움직이지만, 막상 글로
설명해보려고 쓰려면 잘 안떠오르는 경우가 많거든요.
그렇지만, 자주 사용되는 건 대충 다 설명한거 같네요.

도움되시길 바라면서, 이만...


독립문에서 임펠리테리였습니다.
얼큰 [cityguy2]   2002-05-16 12:06 X
블럭 설정후에 CTRL + SHIFT + U 또는 CTRL + SHIFT + I 를 누르면 블럭을 한번에 지정탭만큼 움직일수 있습니다.
얼큰 [cityguy2]   2002-05-16 12:07 X
울트라 에디터에서 블럭 설정후에 텝키를 누른 것처럼여.....
반짝반짝 [flea80]   2007-03-13 16:35 X
그리고 보통 사람들이 잘 모르는 유용한 기능으로, 세로 블럭 설정이 있습니다.
보통 IDE의 에디터에서 시프트+방향키로 블럭을 설정하면 가로방향으로 블럭이
설정이 되지요? 빌더에도 아래아 한글처럼 세로로(사각형 영역으로) 블럭을
설정하는 기능이 있습니다. 이것은 컨트롤+알트+방향키로 합니다. 이후로는 계속
세로로만 블럭이 설정되는데, 해제하려면 마우스로 드래그해서 일반 블럭을 한번
설정해주면 됩니다.

이부분에서 맨마지막에 해제 하는 방법은 Ctrl + z로도 되요
근데 이건 언도도 되니깐 쫌 않좋고
Ctrl+ o 누르고 Ctrl 띠지 말고 k 눌러두 되용
마우스 안쓰고
이거 알아내니라 ;;; 한참 찾았네
이평섭 [wanglung]   2010-03-10 23:36 X
http://delphi.wikia.com/wiki/Default_IDE_Shortcut_Keys 에서 우연히 발견한 단축키입니다.

uses에 사용하려는 유닛파일이름 넣어주기
Ctrl + Shift + A     Invoke Add to uses clause(Find unit in Delphi 2006) window (Refactoring)

+ -

관련 글 리스트
28 팁! 델파이와 C++빌더의 유용한 단축키 박지훈.임프 22947 1999/06/04
(링크)     Delphi Tip'N Tricks > 팁! 델파이와 C++빌더의 유용한 단축키
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.