안녕하세요?
오늘도 날씨가 무지 화창하군요...
오늘 질문할 내용을 적어 보겠습니다.
먼저 세개의 테이블이 있습니다.
table_a 에는 학번과 이름의 컬럼이 있고
table_b 에는 학번과 주소와 전화번호가 있고
table_c 에는 학번과 월별, 국어, 영어, 수학의 점수가 있습니다.(3월말,4월말,5월말)
Form1에 DBGrid를 넣고 table_a 와 연결합니다.
그러면 학번과 이름이 나오겠죠?
이때 DBGrid를 더블클릭하면
Form2가 열리면서 학번이 일치하는 table_b의 내용의 dbedit와(학번,주소,전화번호)
학번이 일치하는 table_c 의 DBGrid(학번,월별,국어,영어,수학)를 열려고 합니다.
어떻게 해야 하나요?
이거 제 수준에선 무지하게 어려운겁니다.
부디 고수님들의 조언 부탁드립니다.
즐거운 하루 되십시오...
> 안녕하세요?
> 오늘도 날씨가 무지 화창하군요...
> 오늘 질문할 내용을 적어 보겠습니다.
>
> 먼저 세개의 테이블이 있습니다.
> table_a 에는 학번과 이름의 컬럼이 있고
> table_b 에는 학번과 주소와 전화번호가 있고
> table_c 에는 학번과 월별, 국어, 영어, 수학의 점수가 있습니다.(3월말,4월말,5월말)
>
> Form1에 DBGrid를 넣고 table_a 와 연결합니다.
> 그러면 학번과 이름이 나오겠죠?
> 이때 DBGrid를 더블클릭하면
> Form2가 열리면서 학번이 일치하는 table_b의 내용의 dbedit와(학번,주소,전화번호)
> 학번이 일치하는 table_c 의 DBGrid(학번,월별,국어,영어,수학)를 열려고 합니다.
> 어떻게 해야 하나요?
>
> 이거 제 수준에선 무지하게 어려운겁니다.
> 부디 고수님들의 조언 부탁드립니다.
> 즐거운 하루 되십시오...
>
재밌을 것 같아 후다닥 만들어 봤습니다.
특별한 건 없구 아래 코드를 잘 활용하시면 됩니다. ^_^
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
with DBGrid1.DataSource.DataSet do
begin
GotoBookmark(pointer(DBGrid1.SelectedRows.Items[0]));
Form2.Visible := True;
Form2.Query1.ParamByName('KeKe').AsString := ActiveBuffer;
Form2.Query1.Active := True;
end;
end;
[참고] TForm1 : 해당 학번의 Row 더블클릭하는 폼
TForm2 : 더블클릭 후 새로 뜨는(성적을 보여주는) 창
DBGrid1 : TForm1의 DBGrid
Query1 : TForm2의 성적 DBGrid와 연결된 Query
[참고] SQL : select * from table_b where id = :KeKe;
냠.. 만약에 모양도 이쁘게 만들어야 되고 제어도 많이 해야한다면
님이 그냥 Grid를 새로 만드심이 좋습니다.
단지 이걸로 끝나는 거라면 걍 이렇게 쓰셔도 문안 할 것 같구요