Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
DBGrid에 대해 .. [누가좀 도와주세요]
안녕하세요
두가지 궁금한점이 있어서요
1. DBGrid로 입력할때 특정 칼럼에 커셔를 위치시키고 싶은데
2. DBGrid에서 display할때 데이타가 0,1,2로 들어있는 것을
입금,출금,대체 이런식으로 display하고 싶어요
누가좀 도와주세요.
2
COMMENTS
배준상
•
2000.06.28 23:13
최월자 wrote:
>
> 안녕하세요
> 두가지 궁금한점이 있어서요
>
> 1. DBGrid로 입력할때 특정 칼럼에 커셔를 위치시키고 싶은데
>
> 2. DBGrid에서 display할때 데이타가 0,1,2로 들어있는 것을
>
> 입금,출금,대체 이런식으로 display하고 싶어요
>
> 누가좀 도와주세요.
>
-- 1번 답변
먼저 특정 Column이 나타낼 Data의 Field명을 알아야 합니다.
예를 들어 TQuery에서 오른쪽 마우스 버튼을 클릭한 후 'Add all Fields'를
선택합니다. 그리고 DBGrid와 TQuery를 연결합니다. 연결하는 방법은 다 아시겠지요..
그러면 특정 Column이 나타낼 Field명이 Columnd을 가리키게 됩니다.
Query_FirstMA002_MENU.FocusControl;
위와 같이 Query_First라고 하는 DataSet에서, 나타낼 Field가 MA002_MENU라고
한다면 DBGrid에서 특정 Column이 가리키는 것은 Query_FirstMA002_MENU가 됩니다.
-- 2번 답변
만약 DataBase가 Oracle이라면 ..
Select Decode(필드명, '1', '입금', '2', '출금', '3', '대체')
From 테이블명
이렇게 기술해 주시면 됩니다.
0
0
삭제
수정
댓글
까마귀
•
2000.06.28 22:37
최월자 wrote:
>
> 안녕하세요
> 두가지 궁금한점이 있어서요
>
> 1. DBGrid로 입력할때 특정 칼럼에 커셔를 위치시키고 싶은데
>
> 2. DBGrid에서 display할때 데이타가 0,1,2로 들어있는 것을
>
> 입금,출금,대체 이런식으로 display하고 싶어요
>
> 누가좀 도와주세요.
>
안녕하세요. 까마귀입니다.
무지 덥네요. 아고 더버라...
1번의 컬럼에 커서 위치하기.
아래의 코드를 살펴보세요. DBGrid의 KeyDown 이벤트에 구현한 겁니다.
if Key = VK_RETURN then //눌려진 키가 Return 키이면...
begin
With (ActiveControl as TDBGrid) do
begin
if FieldCount = SelectedIndex + 1 then
// FieldCount : 필드의총수 SelectedIndex : 현재 선택되어있는 Column의 번호 0부터 시작입니다.
// + 1하는 이유는 Index가 0부터 시작이므로 마지막에 있는지 체크하려면 +1을 해줘야합니다.
begin
DataSource.DataSet.Next;
if DataSource.DataSet.Eof then DataSource.DataSet.Append;
SelectedIndex := 0;
Exit;
end;
if FieldCount > SelectedIndex + 1 then
SelectedIndex := SelectedIndex + 1;
end;
end;
이것은 Return Key를 누르면 한칸 옆으로 옮기고, 마지막이면 다음줄로가고, 젤 마지막이면 추가가 되도록 한겁니다.
2번 데이터 0,1,2를 입금,출금,대체로 바꾸기.
나중에 다른게 입력되는 일 - 예를 들어 3 등이 - 이 없는 경우는 그냥 FieldEditor에서 각각의 필드에 있는 이벤트중
OnGetText 이벤트를 이용하시고요, 있는 경우는 LookUp 기능을 이용하세요.
LookUp 을 이용시는 0,1,2등의 코드가 들어있는 테이블이 있어야 겠지요.
OnGetText 이용법.
Table이나 Query를 더블클릭하여 FieldEditor창에서 모든 레코드 생성.
원하는 Field를 선택 OnGetText이벤트 더블클릭.
아래처럼 쓰면 됩니다.
if Sender.AsInteger = 0 then Text := '입금'
else if Sender.AsInteger = 1 then Text := '출금'
else Text := '대체';
LookUp이용법.
FieldEditor에서 NewField를 생성. 이름 정하고, LookUp을 선택.
Key Field : 실제 저장될 Field.
LookUp DataSet : LookUp으로 보여줄 DataSet. 코드 테이블.
LookUp KeyFields : Key Field에 저장할 LookUp Field.
LookUp ResultField : Lookup으로 보여줄 Field.
이렇게 만들고, 해당 DBGrid에 새로 만든 LookUp필드를 대신 보여주게 하면 됩니다.
위대한 단군혼이 살아있는 나라.... 대한민국.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
김동섭
2000.06.28 22:16
0
COMMENTS
/
0
LIKES
폼의 위치 고정...
김병훈
•
2000.06.28 22:14
2
COMMENTS
/
0
LIKES
Cannot find implementation of method FormCrea
송재영
•
2000.06.28 22:36
음.. 일단 지금 작업하고 계시는 델파이버젼이 얼마인지 궁금하군요. 예전에 2.0에서 주로 아래와 같은 ...
김병훈
•
2000.06.28 23:22
네. 친절한 말씀 감사드립니다. 송재영 wrote: > 음.. 일단 지금 작업하고 계시는 델파이버젼이 얼마...
초보
•
2000.06.28 21:56
2
COMMENTS
/
0
LIKES
Active X 실행시에 파라메터 전달?
이경문
•
2000.06.29 01:44
파라메터 전달이 가능합니다. 단 해당하는 ActiveX가 어떤 Parameter를 가지는지 사전에 알고 있어햐 합니...
초보
•
2000.06.29 02:40
이경문 wrote: > 파라메터 전달이 가능합니다. > 단 해당하는 ActiveX가 어떤 Parameter를 가지는지 사전...
heimdal
2000.06.28 21:20
0
COMMENTS
/
0
LIKES
어디가 잘못된거죠??
김만성
•
2000.06.28 21:11
1
COMMENTS
/
0
LIKES
폼 caption에서 델파이 이미지 없애는 방법은?
송재영
•
2000.06.28 21:37
프로젝트 옵션에서 application icon 바꾸면 됩니다. 글구 컴파일... 김만성 wrote: > 델피 가족 여러...
이병웅
•
2000.06.28 20:41
2
COMMENTS
/
0
LIKES
DLL 사용할려구 하는데 문제가...
히지니
•
2000.07.05 03:45
제가 알기로는 파스칼에서 문자열 배열은 1부터라고 알고 있는데요... 0번째는 다른 문자가 들어가는거 같...
cell
•
2000.06.29 03:36
델파이 2.0 인가 이후부터는 string으로 선언하면 2의 31승까지 문자가 가능한데요.... 그러면 몇문자인지...
최월자
•
2000.06.28 20:36
2
COMMENTS
/
0
LIKES
DBGrid에 대해 .. [누가좀 도와주세요]
안녕하세요 두가지 궁금한점이 있어서요 1. DBGrid로 입력할때 특정 칼럼에 커셔를 위치시키고 싶은데 2. DBGrid에서 display할때 데이타가 0,1,2로 들어있는 것을 입금,출금,대체 이런식으로 display하고 싶어요 누가좀 도와주세요.
배준상
•
2000.06.28 23:13
최월자 wrote: > > 안녕하세요 > 두가지 궁금한점이 있어서요 > > 1. DBGrid로 입력할때 특정 칼럼...
까마귀
•
2000.06.28 22:37
최월자 wrote: > > 안녕하세요 > 두가지 궁금한점이 있어서요 > > 1. DBGrid로 입력할때 특정 칼럼...
안승호
•
2000.06.28 20:08
1
COMMENTS
/
0
LIKES
[문의]DBMEMO 에서 칸수 제한하는 방법
이재식
•
2000.06.29 00:24
안승호 wrote: > DBMEMO에서 칸수를 일정한도로 조정하려고 하는데 어떤 함수를 > 사용해야 하는지 알려...
임병우
2000.06.28 19:53
0
COMMENTS
/
0
LIKES
사운드 볼륨을 더 크게 할 수 없나요?
조헌철
2000.06.28 19:53
0
COMMENTS
/
0
LIKES
전화접속네트워킹 잘 아시는 분
김광호
2000.06.28 19:30
0
COMMENTS
/
0
LIKES
StordProc컴포넌트 가 문제..?
사발우성
•
2000.09.27 03:55
1
COMMENTS
/
0
LIKES
인스톨쉴드 사용법
송재영
•
2000.06.28 21:36
안녕하세요. 어디섭터 어디까지 말씀드려야 할지 잘 모르겠지만... 일단 방법만 알려드릴께여. 원래 인...
초보델파이
2000.06.28 19:10
0
COMMENTS
/
0
LIKES
영문 윈도우에서 퀴리문 문제입니다.
pomi
•
2000.06.28 19:01
1
COMMENTS
/
0
LIKES
SQL Explorer 에 관한 궁금증
송재영
•
2000.06.28 22:39
안녕하세요. 음.. 일단 제가 알기로는 오라클 8에서 none으로 나타나는건 아무리 patch를 해두 해결이 않...
초보자
2000.06.28 18:27
0
COMMENTS
/
0
LIKES
탐색기에서 오른쪽 버튼 눌렀을때 등록정보의 내용을 델파이에서 가져오려면?
홍기원
•
2000.06.28 17:17
2
COMMENTS
/
0
LIKES
[DBGrid] 마우스로 클릭(포커스)하면 그 해당 레코드만 색 바꾸는 법 조언 부탁합니다
이재식
•
2000.06.29 00:12
홍기원 wrote: > > 디비그리드위에서 마우스로 클릭을 하면 그 해당 레코드만 색깔을 빠꾸는 > > 방...
홍기원
•
2000.06.29 09:16
이재식 wrote: > 홍기원 wrote: > > > > 디비그리드위에서 마우스로 클릭을 하면 그 해당 레코드만 색...
용이사랑
•
2000.06.28 17:11
2
COMMENTS
/
0
LIKES
레포트 문제
얀
•
2000.06.28 23:51
용이사랑 wrote: > > * 델3.0으로 프로그램을 만들고 있습니다. > 안되는 부분은요 > 현재 재고li...
nilriri
•
2000.06.28 17:58
레포트에 그룹헤더벤드를 배치한후에 헤더벤드의 expression속성에 코드를 지정(query1.코드)이렇게 하시...
장철진
•
2000.06.28 11:16
1
COMMENTS
/
0
LIKES
메인에 전역변수 지정후 dll 폼에서....
김원식
•
2000.06.28 19:03
안녕하세요 김원식입니다. 공유메모리를 사용하시는 것이 좋을 듯합니다. 메인에서 공유메모리를 ...
찾는이
•
2000.06.28 09:41
1
COMMENTS
/
0
LIKES
서버에서 무한루프로 도는 곳에 변수를 쓸려고하는데 도대체 되질 않네여..
양병규
•
2000.06.28 10:26
무한루프의 첫번째라인에 Application.ProcessMessages; 를 넣어보세요 그럼 평안하시길~
초보왕
•
2000.06.28 09:03
2
COMMENTS
/
0
LIKES
text 파일 내용중에 특정부분을 일고 그 부분을 다시 쓰려면..??
김원식
•
2000.06.28 19:12
안녕하세요 김원식입니다. Temp파일을 사용하세요. 원본 Text파일에서 한줄씩 읽어 원하는 부분을 수정...
양병규
•
2000.06.28 10:32
메모장으로 열어서 특정부분을 지우세요 지우는 방법은 마우스로 블럭을 잡아서 Delete키를 눌러도되고 백...
최월자
2000/06/28 20:36
Views
335
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
>
> 안녕하세요
> 두가지 궁금한점이 있어서요
>
> 1. DBGrid로 입력할때 특정 칼럼에 커셔를 위치시키고 싶은데
>
> 2. DBGrid에서 display할때 데이타가 0,1,2로 들어있는 것을
>
> 입금,출금,대체 이런식으로 display하고 싶어요
>
> 누가좀 도와주세요.
>
-- 1번 답변
먼저 특정 Column이 나타낼 Data의 Field명을 알아야 합니다.
예를 들어 TQuery에서 오른쪽 마우스 버튼을 클릭한 후 'Add all Fields'를
선택합니다. 그리고 DBGrid와 TQuery를 연결합니다. 연결하는 방법은 다 아시겠지요..
그러면 특정 Column이 나타낼 Field명이 Columnd을 가리키게 됩니다.
Query_FirstMA002_MENU.FocusControl;
위와 같이 Query_First라고 하는 DataSet에서, 나타낼 Field가 MA002_MENU라고
한다면 DBGrid에서 특정 Column이 가리키는 것은 Query_FirstMA002_MENU가 됩니다.
-- 2번 답변
만약 DataBase가 Oracle이라면 ..
Select Decode(필드명, '1', '입금', '2', '출금', '3', '대체')
From 테이블명
이렇게 기술해 주시면 됩니다.