혹시, 변수['A'] 와 같이 사용할 수 있냐는 질문인지..
예를 들면, Arry라는 배열이 있고, 포지션을 찾기 위해 String을
이용할 수 있냐는 질문인지..
즉, Arry['A'] 값을 읽어올 수 있냐는 의미입니까?
제가 머리가 나쁜지 이해를 할 수가 없네여..
구체적인 예를 들어주시면.. 어떠실지..
어쨌뜬.. Arry['A'] 형식의 값을 좀 번거럽지만 읽어 올 수 있습니다.
GetEnumValue라는 함수가 있는데
도움말을 보시면, 자세한 Sample도 구하실 수 있을 겁니다..
하지만,
그런 문제였군여..
이런 문제는 예전에 답변을 많이 했었던걸로 기억이나는데..
어쨌든, 답변을 드리져..
Delphi는 Object Pascal언어로 구성되어져 있습니다.
겉모양만 봐도.. 컴포넌트 기반이라는게 확실히 나타난다는것을
알 수가 있습니다.
물론, Class를 기본으로 하고 있기 때문에
상위,하위 Class가 존재합니다.
즉 어떤 Class에 포함되어 있는 어떤 Window Control이나
다른 컴포넌트를 상위 Class를 이용하면 찾을 수 있다는 말입니다..
예를 들어, 특정 Form에 소속되어 있는 컴포넌트를 찾고자 할때에는
이렇게 Loop를 비교해서 찾습니다..
Form명이 MAINF라고 가정하면,
For ll_Cnt := 0 To MAINF.ComponentCount - 1 Do
If MAINF.Components[ll_cnt] is TLabel Then //찾고자 하는게 Label이면
(MAINF.Components[ll_Cnt] as TLabel).Caption := '라벨이네여'
Else If MAINF.Components[ll_cnt] is TEdit Then //찾는게 Edit 컴포넌트면
(MAINF.Components[ll_cnt] as TEdit).Text := 'Edit 컴포넌트네';
뭐 이런식으로 찾습니다..
만약 Form이 MDI Form이라면,
For ll_Cnt := 0 To MDIChildCount - 1 do
Begin
//이곳에서는 위와 같이 Coding하시면 됩니다..
//물론, 특정 Child Form이 있는지 확인도 가능하겠쪄?
//당연히, 해당 폼의 해제(Free)도 가능할꺼고..
//해당 컴포넌트가 없다면.. 생성도 가능할꺼고.. *^^*
End;
답이 되셨길 바랍니다..
애구애구..
아침부터 타자 열심히 쳤더니..
팔이 아푸군여..
님.. 넘 열심히 해서 VDT 증후군에는 걸리지 맙시다..
몸이 최고입니다..
항상 건강하세염..
var
I: Integer;
Temp: TComponent;
begin
for I := ComponentCount - 1 downto 0 do
begin
Temp := Components[I];
if not (Temp is TLabel) then
begin
TLabel(Temp).Caption:='0';
end;
end;
end;
혹시, 변수['A'] 와 같이 사용할 수 있냐는 질문인지..
예를 들면, Arry라는 배열이 있고, 포지션을 찾기 위해 String을
이용할 수 있냐는 질문인지..
즉, Arry['A'] 값을 읽어올 수 있냐는 의미입니까?
제가 머리가 나쁜지 이해를 할 수가 없네여..
구체적인 예를 들어주시면.. 어떠실지..
어쨌뜬.. Arry['A'] 형식의 값을 좀 번거럽지만 읽어 올 수 있습니다.
GetEnumValue라는 함수가 있는데
도움말을 보시면, 자세한 Sample도 구하실 수 있을 겁니다..
하지만,
Arry['B'] = Arry['T'] + Arry[Q'];
와 같은 연산은 되지 않을 겁니다..