안냐세요~~~
메리 설날!!!
새해 복은 많이들 받으셨나요?? 안 받으신 분은
새해에도 복 많이 받으시고, 좋은 일들만 가득하시길... 꾸벅~~~
다름이 아니라 Form27의 페이지컨트롤 3개를 이용하여 Combobox 3,4,6에 아래와 같이
코딩하여 실행 했습니다. 그 결과가 나왔는데, 이 코딩을 복사하여 Form28에 붙여넣기하여 실행했습니다. 그런데 안 되던데, 앞의 Form과 뒤의 Form의 내용은 같음...
(기타 부수적인 내용은 수정 후 실행...)
뭔가 다른 것이 필요한지???
2000년 새해를 맞이한 이 시점에서 불쌍한 지현이에게 한표를.... 구벅~~~
procedure TForm27.ComboBox3Change(Sender: TObject);
var
i,t:integer;
begin
Table1.Filtered :=false;
t:=table1.RecordCount ;
edit4.text:= IntTostr(Table1.RecordCount);
if t>0then begin
case combobox3.ItemIndex of
0 : begin
table1.Filtered := false;
edit4.text:= IntTostr(Table1.RecordCount);
edit5.text:='';
end;
1 : begin
table1.Filtered := false;
table1.Filter := '세대주 = ''세''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit4.text:=IntTostr(Table1.RecordCount);
edit5.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
end;
end;
end;
procedure TForm27.Table1AfterOpen(DataSet: TDataSet);
begin
Edit4.text:=IntTostr(Table1.RecordCount);
end;
procedure TForm27.ComboBox4Change(Sender: TObject);
var
i,t:integer;
begin
Table1.Filtered :=false;
t:=table1.RecordCount ;
edit6.text:= IntTostr(Table1.RecordCount);
if t>0then begin
case combobox4.ItemIndex of
0 : begin
table1.Filtered := false;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:='';
end;
1 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''상업''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
edit6.text:= IntTostr(Table1.RecordCount);
end;
2 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''수산업''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
3 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''서비스업''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
4 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''공무원''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
5 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''회사원''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
6 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''학생''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
7 : begin
table1.Filtered := false;
table1.Filter := '직업 = ''기타''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit6.text:= IntTostr(Table1.RecordCount);
edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
end;
end;
end;
procedure TForm27.ComboBox6Change(Sender: TObject);
var
i,t:integer;
begin
Table1.Filtered :=false;
t:=table1.RecordCount ;
edit10.text:= IntTostr(Table1.RecordCount);
if t>0then begin
case combobox6.ItemIndex of
0 : begin
table1.Filtered := false;
edit10.text:= IntTostr(Table1.RecordCount);
edit11.text:='';
end;
1 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''A''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit10.text:= IntTostr(Table1.RecordCount);
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
2 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''B''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit10.text:= IntTostr(Table1.RecordCount);
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%'; end;
3 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''C''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit10.text:= IntTostr(Table1.RecordCount);
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
4 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''D''';
table1.Filtered := true;
i:=Table1.RecordCount;
edit10.text:= IntTostr(Table1.RecordCount);
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
5 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''E''';
table1.Filtered := true;
edit10.text:= IntTostr(Table1.RecordCount);
i:=Table1.RecordCount;
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
6 : begin
table1.Filtered := false;
table1.Filter := '분석 = ''F''';
table1.Filtered := true;
edit10.text:= IntTostr(Table1.RecordCount);
i:=Table1.RecordCount;
edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
end;
end;
end;
end;
고생이 많군요... 문제 잘 해결되길 바라며 아는 범위에서 좀...
저는 폼의 내용과 작업이 같은 부분을 똑같이 사용할때 이런방법을 씁니다.
우선 폼위에서 마우스 우측버튼을 클릭하여 폼 모양을 텍스트로 변환하여
나타냅니다.
그리고 붙여넣기할 폼도 역시 텍스트로 변환하여 나타낸후 복사하여 붙여넣기합니다.
그리고 소스코드로 똑같이 붙여넣기 합니다.
이때 ctrl + r(바꾸기) 을 이용하여
procedure TForm27.ComboBox3Change이런부분을
procedure TForm28.ComboBox3Change이렇게 바꾸고 사용하면 될듯...
그리고 폼과 코드를 복사하여 넣었다면 이벤트를 복사하여 넣었다고
하더라도 오브젝트 인스펙터에 보변 이벤트가 제대로 나타나지 않는것을
볼 수 있을겁니다. 이때는 붙여넣기한 컨트롤에서 붙여넣기한 이벤트를
오브젝트인스팩터에서 드롭다운 콤보박스에서 선택하여 주어야 합니다.
그래야 복사한 이벤트가 제대로 작동됩니다.
저도 다른 폼또는 다른 프로제트에서 잘 오려다 붙이기를 하는 관계로
이상한 버그에 시달려 오기도 해서 .....
근데 코딩하는 습관을 갖어야 하겠더라구요.....-nilriri 생각-
서지현 wrote:
> 안냐세요~~~
> 메리 설날!!!
>
> 새해 복은 많이들 받으셨나요?? 안 받으신 분은
> 새해에도 복 많이 받으시고, 좋은 일들만 가득하시길... 꾸벅~~~
>
> 다름이 아니라 Form27의 페이지컨트롤 3개를 이용하여 Combobox 3,4,6에 아래와 같이
> 코딩하여 실행 했습니다. 그 결과가 나왔는데, 이 코딩을 복사하여 Form28에 붙여넣기하여 실행했습니다. 그런데 안 되던데, 앞의 Form과 뒤의 Form의 내용은 같음...
> (기타 부수적인 내용은 수정 후 실행...)
> 뭔가 다른 것이 필요한지???
>
> 2000년 새해를 맞이한 이 시점에서 불쌍한 지현이에게 한표를.... 구벅~~~
> procedure TForm27.ComboBox3Change(Sender: TObject);
> var
> i,t:integer;
> begin
> Table1.Filtered :=false;
> t:=table1.RecordCount ;
> edit4.text:= IntTostr(Table1.RecordCount);
> if t>0then begin
> case combobox3.ItemIndex of
> 0 : begin
> table1.Filtered := false;
> edit4.text:= IntTostr(Table1.RecordCount);
> edit5.text:='';
> end;
>
> 1 : begin
> table1.Filtered := false;
> table1.Filter := '세대주 = ''세''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit4.text:=IntTostr(Table1.RecordCount);
> edit5.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> end;
> end;
> end;
>
>
>
> procedure TForm27.Table1AfterOpen(DataSet: TDataSet);
> begin
> Edit4.text:=IntTostr(Table1.RecordCount);
> end;
>
> procedure TForm27.ComboBox4Change(Sender: TObject);
> var
> i,t:integer;
> begin
> Table1.Filtered :=false;
> t:=table1.RecordCount ;
> edit6.text:= IntTostr(Table1.RecordCount);
> if t>0then begin
> case combobox4.ItemIndex of
> 0 : begin
> table1.Filtered := false;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:='';
> end;
>
> 1 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''상업''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> edit6.text:= IntTostr(Table1.RecordCount);
> end;
> 2 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''수산업''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 3 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''서비스업''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 4 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''공무원''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 5 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''회사원''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 6 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''학생''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 7 : begin
> table1.Filtered := false;
> table1.Filter := '직업 = ''기타''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit6.text:= IntTostr(Table1.RecordCount);
> edit7.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> end;
> end;
> end;
>
>
> procedure TForm27.ComboBox6Change(Sender: TObject);
> var
> i,t:integer;
> begin
> Table1.Filtered :=false;
> t:=table1.RecordCount ;
> edit10.text:= IntTostr(Table1.RecordCount);
> if t>0then begin
> case combobox6.ItemIndex of
> 0 : begin
> table1.Filtered := false;
> edit10.text:= IntTostr(Table1.RecordCount);
> edit11.text:='';
> end;
> 1 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''A''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit10.text:= IntTostr(Table1.RecordCount);
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 2 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''B''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit10.text:= IntTostr(Table1.RecordCount);
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%'; end;
> 3 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''C''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit10.text:= IntTostr(Table1.RecordCount);
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 4 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''D''';
> table1.Filtered := true;
> i:=Table1.RecordCount;
> edit10.text:= IntTostr(Table1.RecordCount);
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 5 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''E''';
> table1.Filtered := true;
> edit10.text:= IntTostr(Table1.RecordCount);
> i:=Table1.RecordCount;
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> 6 : begin
> table1.Filtered := false;
> table1.Filter := '분석 = ''F''';
> table1.Filtered := true;
> edit10.text:= IntTostr(Table1.RecordCount);
> i:=Table1.RecordCount;
> edit11.text:=FloatTostr(trunc((i/t*100)*100+0.5)/100)+'%';
> end;
> end;
> end;
> end;
>