안녕하세요? 델파이 만진지 이제 갓 일주일 되어가는 초보입니다.
여쭤보고싶은 것이 2개지 있는데요, 우선 첫번째 질문은...
제가 윈도우 시작버튼 위치에(화면위치) 메뉴를 만들고 그걸 클릭하면 원하는
레지스트리를 읽어서 그 내용대로 메뉴를 동적으로 생성하려고 하는데요,
그러니까,레지스트리에 6개 메뉴가 있고.. 각자 서브메뉴들이 수십개씩 있어요
버튼을 누르면 이 내용들이 메뉴화되어 펼쳐져야 하는데, 이 때 사용하는게
메인메뉴인가요? 팝업메뉴인가요? 저는 팝업메뉴가 윈도우상에서 오른쪽버튼
클릭시의 팝업창같은것으로 이해했는데 여기 글을보니 제가 원하는 것을
팝업메뉴로도 할 수 있는건가 아리송해져서요(전 메인메뉴로 만드는 중..)
----------------------------------------------------------------------
두번째 질문은, 메인 메뉴로 작업중의 문제인데요..제가 버튼 캡션을 MENU로
지었구, 이걸 클릭하면 6개의 주메뉴가 뜨며, 그 중의 하나에 마우스를 올리면
자신이 소유한 서브메뉴들이 쫙 보여져야 하는데요. 뜻대로 안 되네요;;
type
MENU: TMainMenu;
Menu1: TMenuItem; //제가 만든 메뉴 이름은 Mneu1입니다..
procedure Menu1Click(Sender: TObject);
var
path: string;
key: string;
value: string;
procedure TForm1.Menu1Click(Sender: TObject);
var
index : integer;
items : string;
itemName : string;
begin
path := '\SOFTWARE\Ultrasound\Measure';
value := 'items';
itemName := 'I have no item';
//레지스트리의 값을 읽어서
items := GetRegString(path, 'Items', 'nothing');
while items <> '' do
begin
index := pos('|',items)-1; //최초 구분자의 위치에서 -1한 값을 index에 저장
//마지막 아이템일 경우 '|'가 없기때문에 index값을 변경
if index <= 0 then index := length(items);
itemName := copy(items, 1, index); //index의 위치까지가 temName
delete(items,1,index+1); //얻은 itemName과 '|' 삭제
Menu.items.add(itemName); //아이템을 동적 생성시켜 보이려고..
end;
end;
어찌어찌 해본건데..뭐가 문제일까요.. 애초부터 다 틀려버린건가요? ㅠ.ㅠ
나름대로 책이랑 개발자 가이드pdf를 구해서 뒤졌는데도 모르겠습니다~
이곳을 '메뉴'라는 이름으로 검색해보니 팝업메뉴의 동적생성법 빼고는 제 문
제점에 해당하는 내용이 없는 듯 하더라구요..제가 검색을 제대로 못했는지도;;
조금이라도 가르쳐주신다면 정말 감사하겠습니다