Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
DBGrid에서 (memo)로 나오는데..
폼에 DBGrid하나 언고, query랑 datasource를 하나 얹었습니다.
다른 필드는 정상적으로 출력이 되는데 한 필드가 (MEMO)의 형태만 나오고 내용이 나오지 않습니다. 아마도 데이타 형이 다른 포맷인것 같은데, 이것을 (MEMO)가 안나오고 내용이 나오게 하는 방법이 없을까요?
그림은 DBGrid에 나오게 할수 있다고 들었는데, (MEMO)로 나오는것도 방법이 있을것 같은데 영 갑갑하군요.푸우우우우우~~(한숨소리)
1
COMMENTS
최석기
•
2000.08.12 02:07
선해석 wrote:
> 폼에 DBGrid하나 언고, query랑 datasource를 하나 얹었습니다.
>
> 다른 필드는 정상적으로 출력이 되는데 한 필드가 (MEMO)의 형태만 나오고 내용이 나오지 않습니다. 아마도 데이타 형이 다른 포맷인것 같은데, 이것을 (MEMO)가 안나오고 내용이 나오게 하는 방법이 없을까요?
>
> 그림은 DBGrid에 나오게 할수 있다고 들었는데, (MEMO)로 나오는것도 방법이 있을것 같은데 영 갑갑하군요.푸우우우우우~~(한숨소리)
예전에 어디선가 받아놓은 소스가 있네요..
참고하세요..
const
MAX_CHARSIZE = 50; // DBGrid에 출력할 Memo 필드의 글자수
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
var
P: array [0..MAX_CHARSIZE] of char;
BS: TBlobStream;
S: String;
begin
if Field is TMemoField then
begin
with (Sender as TDBGrid).Canvas do
begin
{Table1Notes 은 TMemoField 형입니다}
BS := tBlobStream.Create(Table1Notes, bmRead);
FillChar(P,SizeOf(P),#0);
BS.Read(P, MAX_CHARSIZE); {blobStream 에서 MAX_CHARSIZE 바이트만큼 읽는다}
BS.Free;
S := StrPas(P);
while Pos(#13, S) > 0 do {CR 문자 제거}
S[Pos(#13, S)] := ' ';
while Pos(#10, S) > 0 do {LF 문자 제거}
S[Pos(#10, S)] := ' ';
FillRect(Rect);
TextOut(Rect.Left, Rect.Top, S);
end;
end;
end;
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
사발우성
•
2000.08.12 01:39
3
COMMENTS
/
0
LIKES
헐 초보의 초보적인 질문임당... Radiobutton에 관해서임당.^^
사발우성
•
2000.08.14 18:04
사발우성 wrote: > if strtoint(edit2.Text) < 1 then > radiobutton3.Checked > else > ...
hugehead
•
2000.08.12 04:05
Edit의 OnExit에 한번 해보시지요. 사발우성 wrote: > if strtoint(edit2.Text) < 1 then > ...
최석기
•
2000.08.12 02:13
Change 이벤트나 exit 이벤트에 넣으면 않될까요? 사발우성 wrote: > if strtoint(edit2.Text) < 1 the...
어린왕자
•
2000.08.12 01:33
6
COMMENTS
/
0
LIKES
어떻게 검색해야할지 몰라..질문함다..스트링그리드에서 글짜 굵게 쓰기..
최용일
•
2000.08.12 20:48
안녕하세요. 최용일입니다. OnDrawCell이벤트에서 아래와 같이 코딩하세요. procedure TForm1.String...
사발우성
•
2000.08.12 02:08
살다 보니 이상한 일두 스트링 그리드의 고정된 셀이 모두 지워져 버려여 ㅠ.ㅠ 이구 이...
어린왕자
•
2000.08.12 02:28
아예..안나타난가요? 아무래두 겹쳐서 쓴게 아닌가염? 고정된(색깔있는)셀은 스트링그리드 property에서 ...
castle road
•
2000.08.12 02:02
stringgrid 의 property중에 font라는게 있죠? 있어요! 요걸 이용하면 되겠죠. ex) 색깔 바꾸기 strin...
어린왕자
•
2000.08.12 02:06
OnDrawCell을 이용하면 되는건가요? 어떻게 이용하는 건가요??
SerVing
•
2000.08.16 19:04
procedure StringGrid1.OnDrawCell( ........) var tmpFont : TFont; x, y : integer; begin if...
질문자
•
2000.08.12 01:28
1
COMMENTS
/
0
LIKES
rich edit 콤포넌트 스크롤바 이벤트???
최용일
•
2000.08.12 14:01
안녕하세요. 최용일입니다. 이벤트메소드는 없구요. 윈도우프로시져를 바꾸어서 스크롤 메세지에 대한 ...
RedFox7
•
2000.08.12 00:57
1
COMMENTS
/
0
LIKES
ADO를 사용하면 설치시 무슨 화일이 필요하져?
hugehead
•
2000.08.12 04:00
RedFox7 wrote: > ADO를 사용하여 프로그래밍 하구 있습니다. > 설치시 어떤 DLL이 필요한지 좀 알려주세...
심효찬
2000.08.12 00:53
0
COMMENTS
/
0
LIKES
콤보박스의 리스트중 특정 아이템을 선택시 설정 하지못하도록
선해석
•
2000.08.12 00:41
1
COMMENTS
/
0
LIKES
DBGrid에서 (memo)로 나오는데..
폼에 DBGrid하나 언고, query랑 datasource를 하나 얹었습니다. 다른 필드는 정상적으로 출력이 되는데 한 필드가 (MEMO)의 형태만 나오고 내용이 나오지 않습니다. 아마도 데이타 형이 다른 포맷인것 같은데, 이것을 (MEMO)가 안나오고 ...
최석기
•
2000.08.12 02:07
선해석 wrote: > 폼에 DBGrid하나 언고, query랑 datasource를 하나 얹었습니다. > > 다른 필드는 정상...
수연
2000.08.11 23:55
0
COMMENTS
/
0
LIKES
task bar에서 SM_CYFULLSCREEN 값 바꾸기
문형록
2000.08.11 23:24
0
COMMENTS
/
0
LIKES
웹브라우저 에 관한내용
김태영
2000.08.11 23:19
0
COMMENTS
/
0
LIKES
컨트롤를 배열로 사용하려면...
이성복
2000.08.11 22:44
0
COMMENTS
/
0
LIKES
HTML control ?
이승윤
2000.08.11 22:23
0
COMMENTS
/
0
LIKES
실수연산 결과가 이상합니다.
김태영
•
2000.08.11 22:23
1
COMMENTS
/
0
LIKES
currency edit component 구할 수 없을까요?
최용일
•
2000.08.12 13:58
안녕하세요. 최용일입니다. 자료실에 컴포넌트가 있습니다. 먼저 검색부터 해보세요... ^^ 김태영...
이규학
2000.08.11 22:18
0
COMMENTS
/
0
LIKES
win2000에서 퀵리포트 에러...
사발우성
•
2000.08.11 21:09
2
COMMENTS
/
0
LIKES
Delete 문에 관한 질문 임당.... 지발 봐줘여 ㅠ.ㅠ
정지호
•
2000.08.11 21:20
사발우성 wrote: > > 안뇽 하신가여 고수님 & 중수님들 ^^ > > 지가 하는 SQL 이 똑바로 되었는...
최영근
•
2000.08.12 01:02
정지호 wrote: > 사발우성 wrote: > > > > 안뇽 하신가여 고수님 & 중수님들 ^^ > > > > 지가 ...
윤유섭
•
2000.08.11 21:03
2
COMMENTS
/
0
LIKES
MIDAS에서 이상한 현상이...
hugehead
•
2000.08.12 04:07
Connection을 어떤 것을 씁니까? DCOMConnection? SocketConnection? 제생각엔 DCOMConnection같은...
윤유섭
•
2000.08.14 05:17
관심가져 주셔서 감사합니다. 글을 엉뚱한데 올렸었습니다. NT40에서의 DCOMConfig.exe 설정을 아래...
해피걸
2000.08.11 20:36
0
COMMENTS
/
0
LIKES
MDI 폼 안에 응용프로그램 띄우는 방법??
허춘
2000.08.11 20:29
0
COMMENTS
/
0
LIKES
Re: 퀵레포트버그인가요?허춘씨 다시한번
기관서
•
2000.08.11 20:19
2
COMMENTS
/
0
LIKES
조규춘님 감사합니다.... 한가지만 더....
최석기
•
2000.08.11 20:34
기관서 wrote: > 빠른 답변에 대해서 조규춘님께 대단히 감사드립니다. > 홈페이지 사진두 멋지더군요.. ...
기관서
•
2000.08.11 21:43
최석기님의 글 감사합니다. 나머지 반쪽을 아주 콕찍어 주셨습니다.... 대단히 감사합니다................
장웅철
•
2000.08.11 20:02
1
COMMENTS
/
0
LIKES
도움말 기능 추가건?
celll
•
2000.08.12 00:52
장웅철 wrote: > 델파이로 프로그램을 짜다가 도움말 기능을 삽입할려고 합니다. > > 윈도우의 hlp파일...
이성훈
•
2000.08.11 19:47
3
COMMENTS
/
0
LIKES
고수님들 도와주세요(선택된레코드에 값을 입력하기)
허춘
•
2000.08.11 20:36
이성훈 wrote: > 일단 쿼리한 내용에서 레코드 순소대로 특정한 필드에 값을 update 할려고 하는데요 ...
이성훈
•
2000.08.11 22:14
답변 고마습니다. 근디유 지금 쿼리하는 테이블에는 Primarykey 가 정의가 안된상태이거든요... 단순한 ...
허춘
•
2000.08.12 08:12
이성훈 wrote: > 답변 고마습니다. > 근디유 지금 쿼리하는 테이블에는 Primarykey 가 정의가 안된상태이...
선해석
2000/08/12 00:41
Views
238
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 폼에 DBGrid하나 언고, query랑 datasource를 하나 얹었습니다.
>
> 다른 필드는 정상적으로 출력이 되는데 한 필드가 (MEMO)의 형태만 나오고 내용이 나오지 않습니다. 아마도 데이타 형이 다른 포맷인것 같은데, 이것을 (MEMO)가 안나오고 내용이 나오게 하는 방법이 없을까요?
>
> 그림은 DBGrid에 나오게 할수 있다고 들었는데, (MEMO)로 나오는것도 방법이 있을것 같은데 영 갑갑하군요.푸우우우우우~~(한숨소리)
예전에 어디선가 받아놓은 소스가 있네요..
참고하세요..
const
MAX_CHARSIZE = 50; // DBGrid에 출력할 Memo 필드의 글자수
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.DBGrid1DrawDataCell(Sender: TObject; const Rect: TRect;
Field: TField; State: TGridDrawState);
var
P: array [0..MAX_CHARSIZE] of char;
BS: TBlobStream;
S: String;
begin
if Field is TMemoField then
begin
with (Sender as TDBGrid).Canvas do
begin
{Table1Notes 은 TMemoField 형입니다}
BS := tBlobStream.Create(Table1Notes, bmRead);
FillChar(P,SizeOf(P),#0);
BS.Read(P, MAX_CHARSIZE); {blobStream 에서 MAX_CHARSIZE 바이트만큼 읽는다}
BS.Free;
S := StrPas(P);
while Pos(#13, S) > 0 do {CR 문자 제거}
S[Pos(#13, S)] := ' ';
while Pos(#10, S) > 0 do {LF 문자 제거}
S[Pos(#10, S)] := ' ';
FillRect(Rect);
TextOut(Rect.Left, Rect.Top, S);
end;
end;
end;