Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
입력시 오른쪽부터 입력하게...
TextGrid 에서 입력을 할때
숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터
해야 되는데 어떻게 하면 되는지?
아시는분은...
입력 마스크는 어떻게 주는지도 알려주세요...
부탁합니다.
3
COMMENTS
궁금이
•
1999.06.08 00:33
Query를 사용하여 Data를 Select한 후, 정의된 Pointer에 맞게끔 데이타를 넣고
TreeView에 Add하였습니다. 아래 코딩처럼요.
procedure TForm1.TreeViewShow;
begin
Query.Close;
Query.SQL.Add('Select * From Test');
Query.Open;
TreeView1.Items.Clear;
RootNode := TreeView1.Items.Add(nil,'Root');
while not Query1.EOF do begin
New(MRPtr);
MRPtr^.ML0 := Query1.Fields[0].asInteger;
MRPtr^.ML1 := Query1.Fields[1].asInteger;
MRPtr^.ML2 := Query1.Fields[2].asInteger;
MRPtr^.Name := Query1.Fields[3].asString;
if Query1.Fields[0].asInteger <> 0 then
MyNode1 := TreeView1.Items.AddChildObject(RootNode,MRPtr^.Name, MRPtr);
.....
.....
Next;
end;
TreeView1.FullExpand;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Dispose(MRPtr);
end;
그런데 Form의 OnShow이벤트에 위와 같이 작성한 함수를 호출했을 때는 아무 이상이 없는데, DB에 새로운 데이타를 insert 한 후, TreeView를 Refresh하기 위해 위의 함수를 다시 한번 호출하면 TreeView의 내용이 이상하게 나옵니다.
(그러니까, 아까의 내용이 Clear가 되지 않는다든지, TreeView의 내용이 선택이 되지 않는다든지...)
제가 뭘 잘못한걸까요?
그런데 똑같은 함수를 다른 Form에서 만들어서 사용했는데, 거기는 아직까지 이상이 없는 것 같네요.
한번 살펴봐 주시기 바랍니다.
0
0
삭제
수정
댓글
안치봉
•
1999.02.10 19:41
홍지선 wrote:
> TextGrid 에서 입력을 할때
> 숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터
> 해야 되는데 어떻게 하면 되는지?
> 아시는분은...
> 입력 마스크는 어떻게 주는지도 알려주세요...
> 부탁합니다.
>
그리드에서 텍스트를 입력할때 내부적으로 에디터를 만들어서 쓰는걸로
알고 있습니다. 그러다면 그 에디터를 어떻게하든 오른쪽 으로 텍스트가
정렬되게 해야 하는거죠.... 상당히 복잡해 지네요...
procedure TForm1.FormCreate(Sender: TObject);
begin
CreateWindowEx(WS_EX_CLIENTEDGE, 'EDIT', '', WS_VISIBLE or WS_CHILD or ES_RIGHT, 10, 10, 100, 20, Handle, 0, HInstance, nil);
//CreateWindow('EDIT', '', WS_VISIBLE or WS_CHILD or ES_RIGHT, 10, 10, //100, 20, Handle, 0, HInstance, nil);
end;
처럼 하면 불편하나마... 오른쪽 정렬의 텍스트에디터는 구현이 됩니다.
밑에 주석표시는 입체감이 필요없을때 사용하시면 되고요.
밑의 주석으로 표시한 부분을 콤포넌트화 해서 그리드입력시 사용하는 에디
터로 지정하면 가능할것도 같아요....^^;
아니면 윈도우스타일을 바꾸는 함수를 사용하여 실행시 그리드에디터의 속성을
바꾸시던지요... SetClassLong..., 등등의 함수가 있는걸로 압니다...
자세한건 윈도우 API 를 참고하세요~
그리고 마스크는 델파이 도움말을 보면 아주 친절하게 나와 있습니다~
0
0
삭제
수정
댓글
김성동
•
1999.06.08 01:04
New로 할당한 메모리를 FormClose에서 해제하면 안되죠..
TreeView의 OnDeletion Event를 작성하시고
아래와 같이 코딩하시면...
procedure TreeView1.OnDeletion(Sender: TObject; Node: TTreeNode);
begin
Dispose(MRPtr의 형(Node.Data));
end;
이렇게 해야 Clear 메소드를 호출할 때 New로 할당한 메모리를 자동으로 해제해 주죠.
그럼...
궁금이 께서 말씀하시기를...
> Query를 사용하여 Data를 Select한 후, 정의된 Pointer에 맞게끔 데이타를 넣고
> TreeView에 Add하였습니다. 아래 코딩처럼요.
>
> procedure TForm1.TreeViewShow;
> begin
> Query.Close;
> Query.SQL.Add('Select * From Test');
> Query.Open;
>
> TreeView1.Items.Clear;
> RootNode := TreeView1.Items.Add(nil,'Root');
> while not Query1.EOF do begin
> New(MRPtr);
> MRPtr^.ML0 := Query1.Fields[0].asInteger;
> MRPtr^.ML1 := Query1.Fields[1].asInteger;
> MRPtr^.ML2 := Query1.Fields[2].asInteger;
> MRPtr^.Name := Query1.Fields[3].asString;
>
> if Query1.Fields[0].asInteger <> 0 then
> MyNode1 := TreeView1.Items.AddChildObject(RootNode,MRPtr^.Name, MRPtr);
> .....
> .....
>
> Next;
> end;
>
> TreeView1.FullExpand;
> end;
>
> procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
> begin
> Dispose(MRPtr);
> end;
>
> 그런데 Form의 OnShow이벤트에 위와 같이 작성한 함수를 호출했을 때는 아무 이상이 없는데, DB에 새로운 데이타를 insert 한 후, TreeView를 Refresh하기 위해 위의 함수를 다시 한번 호출하면 TreeView의 내용이 이상하게 나옵니다.
> (그러니까, 아까의 내용이 Clear가 되지 않는다든지, TreeView의 내용이 선택이 되지 않는다든지...)
>
> 제가 뭘 잘못한걸까요?
> 그런데 똑같은 함수를 다른 Form에서 만들어서 사용했는데, 거기는 아직까지 이상이 없는 것 같네요.
> 한번 살펴봐 주시기 바랍니다.
>
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
이재훈
•
1999.06.08 03:10
4
COMMENTS
/
0
LIKES
테이블에 null값 넣기
홍지선
•
1999.02.09 19:34
TextGrid 에서 입력을 할때 숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터 해야 되는데 어떻게...
바이도
•
1999.06.08 18:15
Update TESTTABLE set AAFIELD = ' ' where AAFIELD is null; TESTTABLE : TABLE NAME AAFIELD ...
안치봉
•
1999.02.10 19:41
홍지선 wrote: > TextGrid 에서 입력을 할때 > 숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터 ...
송기원
•
1999.06.08 03:19
Update 테이블이름 set 컬럼이름 = null where 조건문 Ex. Update Employee set new_salary = null ...
황하강
•
1999.06.08 02:59
3
COMMENTS
/
0
LIKES
델파이 2 에서 TCP/IP 이용에 관해서...
강영구
•
1999.02.10 19:32
델파이에 관해서 찾다보니..이곳까지..왔습니다. 아래..질문과 답을 조금 보다보니... 나이렉스라는 곳에...
김영대
•
1999.06.08 18:57
황하강 께서 말씀하시기를... > 질문] > 델파이 2 에서 TCP/IP를 이용해서 서버와 데이타를 주고 받는 ...
신재민
•
1999.02.10 21:53
저희 나이렉스는 서초동에 있습니다. 전화는 521-7900 입니다. 강영구 wrote: > 델파이에 관해서 찾다...
구민오
•
1999.02.10 11:23
2
COMMENTS
/
0
LIKES
폼에 그라이데이션효과를 주려면???
박정현
•
1999.06.08 02:47
안녕하세요. 전 Access하구 델파이하구 연결 해서 쓰고 있는데요. 입력을 시켜 놓구 다시 그행에 가서 필...
안치봉
•
1999.02.10 19:03
구민오 wrote: > 폼에 그라이데이션효과를 주려면 어떻게 해야하나요??? > procedure TForm1.FormPai...
구민오
•
1999.02.10 11:23
3
COMMENTS
/
0
LIKES
폼에 그라이데이션효과를 주려면???
마성수
•
1999.06.08 02:19
도스에서 copy test*.txt error.txt라고 치면 error.text에는 test1.txt와 test2.txt란 화일이 합쳐져 있...
안치봉
•
1999.02.10 19:03
구민오 wrote: > 폼에 그라이데이션효과를 주려면 어떻게 해야하나요??? > procedure TForm1.FormPai...
안치봉
•
1999.06.08 03:41
마성수 께서 말씀하시기를... > 도스에서 copy test*.txt error.txt라고 치면 > error.text에는 test1.tx...
홍지선
•
1999.02.09 19:34
3
COMMENTS
/
0
LIKES
입력시 오른쪽부터 입력하게...
TextGrid 에서 입력을 할때 숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터 해야 되는데 어떻게 하면 되는지? 아시는분은... 입력 마스크는 어떻게 주는지도 알려주세요... 부탁합니다.
궁금이
•
1999.06.08 00:33
Query를 사용하여 Data를 Select한 후, 정의된 Pointer에 맞게끔 데이타를 넣고 TreeView에 Add하였습니다...
안치봉
•
1999.02.10 19:41
홍지선 wrote: > TextGrid 에서 입력을 할때 > 숫자의 경우 오른쪽으로 정렬하고 입력할때도 오른쪽부터 ...
김성동
•
1999.06.08 01:04
New로 할당한 메모리를 FormClose에서 해제하면 안되죠.. TreeView의 OnDeletion Event를 작성하시고 ...
안경훈
1999.02.09 02:19
0
COMMENTS
/
0
LIKES
[아래질문에 대해서] 사용하는 OS는 win98입니다.
신만식
1999.06.07 23:38
0
COMMENTS
/
0
LIKES
Query를 이용한 Update
블루
1999.06.07 23:36
0
COMMENTS
/
0
LIKES
턱시도
안경훈
•
1999.02.09 00:38
1
COMMENTS
/
0
LIKES
델파이와 익스플로어 충돌
이정욱
•
1999.02.09 01:44
현재 사용하시는 델파이 버전은 무엇인지요? OS는 98인가요? 안경훈 wrote: > 델파이가 한번 컴파일하...
송기원
•
1999.06.07 22:59
1
COMMENTS
/
0
LIKES
Delphi4 Access violation?
안치봉
•
1999.06.08 00:37
송기원 께서 말씀하시기를... > Project를 디버깅중에 자꾸 Bordbk40.dll에서 access Violation error > ...
안경훈
•
1999.02.09 00:38
1
COMMENTS
/
0
LIKES
델파이와 익스플로어 충돌
이정욱
•
1999.02.09 01:44
현재 사용하시는 델파이 버전은 무엇인지요? OS는 98인가요? 안경훈 wrote: > 델파이가 한번 컴파일하...
김재억
•
1999.02.05 20:33
4
COMMENTS
/
0
LIKES
[요청] POD에 있던 TracePixel소스좀...
박종성
•
1999.06.07 22:53
안녕하세요! 여러분 델파이에서는 Drive나 Directory, Filelistbox들을 지원해주는데요.(Win 3.1) 써...
이정욱
•
1999.02.08 06:04
E-Mail을 확인해 보세요. 김재억 wrote: > 안녕하세요? 김 재억입니다. > 제가 다니는 회사는 POD정기...
김성동
•
1999.06.08 00:57
탐색기 역할을 하는 콤포넌트는 안치봉님께서 말씀하신 상용 콤포넌트 말고 여러가지 공개 콤포넌트들이 있...
안치봉
•
1999.06.08 00:42
박종성 께서 말씀하시기를... > 안녕하세요! 여러분 > > 델파이에서는 Drive나 Directory, Filelistbox...
이누리
1999.06.07 22:51
0
COMMENTS
/
0
LIKES
MDI Main 에서 Toolbar 사용 예제?
강영구
•
1999.02.05 19:29
1
COMMENTS
/
0
LIKES
스케너..구동
이정욱
•
1999.02.08 06:01
사용하시는 스케너의 Twain드라이버가 직접 아래작업들을 코맨드로 지원하지 않는다면 직접 스케너를 제어...
이승윤
•
1999.06.07 22:27
1
COMMENTS
/
0
LIKES
SQLServer7.0의 DB를 백업하는 방법좀...
김태균
•
1999.06.07 23:48
이승윤 께서 말씀하시기를... > SQLServer7.0을 처음 사용합니다. > 서버에 설치된 DB를 디스켓으로 받아...
김명환
•
1999.02.06 10:34
1
COMMENTS
/
0
LIKES
TResizeComponent컴포넌트를 사용하여 보고...
이정욱
•
1999.02.08 05:38
저희회사에서 취급하는 모든 컴포넌트에 대한 지원은 지금도 계속 되고 있습니다. 항상 http://www.nilex...
구민오
•
1999.02.07 05:03
1
COMMENTS
/
0
LIKES
윈 소켓을 후킹하는 방법은???
송재훈
•
1999.02.11 04:07
구민오 wrote: > winsocket을 후킹을 하고 싶거든요... > 이걸 후킹을 하려면 어떻게 해야 하는지 정말 ...
김명환
•
1999.02.06 10:34
8
COMMENTS
/
0
LIKES
TResizeComponent컴포넌트를 사용하여 보고...
초보
•
1999.06.07 22:06
이정욱
•
1999.02.08 05:38
안치봉
•
1999.06.08 00:46
초보
•
1999.06.09 02:39
초보
•
1999.06.09 02:44
안치봉
•
1999.06.09 03:26
초보
•
1999.06.09 19:14
• • •
권인혁
1999.06.07 19:42
0
COMMENTS
/
0
LIKES
사용자 정의 메세지 받기가 잘 안됩니다.
chobo
•
1999.06.07 19:31
4
COMMENTS
/
0
LIKES
이미지 스크롤은 어떻게 하나요?
구민오
•
1999.02.05 11:02
인터넷 익스플로러나 시작 버튼을 누르면 나오는 실행...을 통해서 URL을 집어 넣을 경우 이 주소 메세지가...
전철호
•
1999.06.07 20:06
chobo 께서 말씀하시기를... > > 폼에 이미지 컴포넌트를 넣고 > 이미지를 불러 들였습니다만, > >...
이정욱
•
1999.02.06 09:54
인터넷 프로그래밍을 하시면서 유해정보차단장치를 만드신다고 하셨는데 그것을 통제하는 방법은 있습니다....
이정욱
•
1999.02.06 01:57
메세지가 발생하면서 전달이 되지는 않을것 같다는것이 제 의견입니다. 그냥 IE는 ActiveX콘트롤로써 그부...
홍지선
1999/02/09 19:34
Views
396
Likes
0
Comments
3
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
TreeView에 Add하였습니다. 아래 코딩처럼요.
procedure TForm1.TreeViewShow;
begin
Query.Close;
Query.SQL.Add('Select * From Test');
Query.Open;
TreeView1.Items.Clear;
RootNode := TreeView1.Items.Add(nil,'Root');
while not Query1.EOF do begin
New(MRPtr);
MRPtr^.ML0 := Query1.Fields[0].asInteger;
MRPtr^.ML1 := Query1.Fields[1].asInteger;
MRPtr^.ML2 := Query1.Fields[2].asInteger;
MRPtr^.Name := Query1.Fields[3].asString;
if Query1.Fields[0].asInteger <> 0 then
MyNode1 := TreeView1.Items.AddChildObject(RootNode,MRPtr^.Name, MRPtr);
.....
.....
Next;
end;
TreeView1.FullExpand;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Dispose(MRPtr);
end;
그런데 Form의 OnShow이벤트에 위와 같이 작성한 함수를 호출했을 때는 아무 이상이 없는데, DB에 새로운 데이타를 insert 한 후, TreeView를 Refresh하기 위해 위의 함수를 다시 한번 호출하면 TreeView의 내용이 이상하게 나옵니다.
(그러니까, 아까의 내용이 Clear가 되지 않는다든지, TreeView의 내용이 선택이 되지 않는다든지...)
제가 뭘 잘못한걸까요?
그런데 똑같은 함수를 다른 Form에서 만들어서 사용했는데, 거기는 아직까지 이상이 없는 것 같네요.
한번 살펴봐 주시기 바랍니다.