Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
폼간의 데이타 전달...고수님들..
어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
고수 님들 부탁합니다.
4
COMMENTS
도움받은이
•
2000.02.08 07:37
form1에서
form2.showmodal;
if form2.modalresult = mrOk then
begin
form1.text := form2.edit1.text;
....이렇게 작업을
end else
begin
.... 작업
end;
form2.free; //이렇게 작업을 한 후에 폼을 메모리에서
//해제 해 주어야만 메모리 에러가 나지 않습니다.
//참 폼2 에서는 폼을 닫기 위한 다른 작업은 안해 주셔도 됩니다.
close라든가 하는것들...modalresult := mrOk, mrCancel로 충분함....
그리고 나중에 작업후 free를....
form2에서
어떤작업을하고...
확인버튼에서
modalresult := mrOk; //이렇게 하면 폼이 닫힙니다.
취소버튼에서
modalresult := mrCancel; //마찬가지로 폼이 닫힙니다.
초짜 wrote:
> 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
> 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
> 그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
> 고수 님들 부탁합니다.
0
0
삭제
수정
댓글
강인규
•
2000.02.07 23:46
혹시 uses절을 선언 안한것이 아닌지...
그리구 modal이 종료될때 (close Event가 되겠지요?)선언된 내용을 적용시켜야 합니다.
버튼 클릭이벤트에 하심 안되지요.
뭐 소스도 필요없겠죠?
close Event에
form1.edit1.text := edit1.Text;
뭐 이렇게 하심 됩니다.
초짜 wrote:
> 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
> 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
> 그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
> 고수 님들 부탁합니다.
0
0
삭제
수정
댓글
최원실
•
2000.02.07 23:20
초짜 wrote:
> 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
> 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
> 그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
> 고수 님들 부탁합니다.
안녕하세요.. 자나가다가 들렸습니다.
1. 호출하는 Form1에서 호출되어지는 Form2를 uses에 선언
2. Form1에서 호출하는 부분에서 호출
예) if Form2 = nil then
Form2 := TForm2.Create(Application);
Form2.ShowModal; // Form2를 불러오기
Edit1.Text := Form2.sValue; // From2에서 가져온 값...
3. Form2에서 받을값을 public 변수를 주어 선언한다.
예) public 절
sValue : String; // 사용자가 입력한 값을 받을 스트링 값을 선언...
4. Form2가 Close될때 값을 Form1에 값을 넘겨줄때 OnClose Event를 이용한다.
예) sValue := edit1.Text; // edit1--사용자가 입력하는 부분
// 사용자가 입력한 값을 sValue에 넣어줌.
// sValue는 public변수 이므로 다른 Form에서
이용 할수 있다. (즉, sValue를 Form1에서 사용..)
간단하게 몇글자 적어봅니다...도움이 됐는지요....
그럼이만 좋은 하루 되세요...
0
0
삭제
수정
댓글
kingdol
•
2000.02.07 23:11
초짜 wrote:
> 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
> 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
> 그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
> 고수 님들 부탁합니다.
제가 쓰는 방법인데 도움이 될지 모르겠네요
다른방법도 있겠지만 제가쓰는 방법은 해당폼에 프로퍼티를 선언해놓고
그것을 이용하여 값을 전달하는 방법입니다.
우선 호출하는폼 : form1
호출받는폼 : form2 라 하고요..
form1에서 form2를 호출하는 부분은 다음과 같습니다..
procedure TForm1.Button1Click(Sender: TObject);
begin
With TForm2.Create(Application) do
begin
ShowModal;
Edit1.Text := Return_value; // 이것에 주목하세요...
Free;
end;
end;
여기에서 Return_value 는 form2에서 선언된 프로퍼티이구여..
Edit1은 from1에 위치한 에디트박스이죠...
이것으로 호출하는 폼에서의 코딩은 끝난거구여..
이제 호출받는쪽의 소스를 살펴볼까요..
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComObj, Grids, StdCtrls, AxCtrls, OleCtrls, vcf1;
type
TForm2 = class(TForm)
Button4: TButton;
procedure Button4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
Return_value : String; // 이곳에 원하는 타입으로 프로퍼티를 선언합니다...
end;
.
.
.
.
.
폼의 정의부분에 원하는 타입으로 변수(프로퍼티)를 정의한다음..
해당폼의 Close Event에서 다음과 같이 코딩하시면 됩니다...
procedure TForm2.Button2Click(Sender: TObject);
begin
Return_value := Edit2.Text; // 여기에서 Edit2는 Form2에서 입력한 값이 되겠죠..
Close;
end;
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
최종민
2000.02.08 05:50
0
COMMENTS
/
0
LIKES
폼에 그래프를 그리고 나서...
류한규
2000.02.08 05:49
0
COMMENTS
/
0
LIKES
TreeView 인쇄 하는 방법은?
변인호
2000.02.08 03:57
0
COMMENTS
/
0
LIKES
ActiveX 설치후.. OleVariant 타입의 변수는?
박현미
2000.02.08 03:51
0
COMMENTS
/
0
LIKES
Delphi5 에서의 DelZip 인스톨 방법
조광석
2000.02.08 03:47
0
COMMENTS
/
0
LIKES
Qreport에서 2개의 그리드를 출력하는 방법좀...
최재원
•
2000.02.08 03:34
1
COMMENTS
/
0
LIKES
수정 후에 dbgrid에 포커스 주기...
유도삼
•
2000.02.08 05:36
추가, 수정후에 DataSet(Query)에 Locate나 FindKey를 써서 포인터를 옮겨주면 되지 않을까 싶은데요. 1....
nambada
•
2000.02.08 03:25
2
COMMENTS
/
0
LIKES
스트링 그리드를 가지고 QReport 다루기
종이학
•
2000.02.09 05:44
nambada wrote: > Detail > ------------------------- > Group Header > ------------------------- ...
이재식
•
2000.02.08 06:23
nambada wrote: > Detail > ------------------------- > Group Header > ------------------------- ...
옥현수
•
2000.02.08 02:24
2
COMMENTS
/
0
LIKES
Too few parameters.
최원실
•
2000.02.08 02:34
옥현수 wrote: > > NT4.0 Server 에서 델파이 4.0을 사용하고 있습니다. > mdb 데이타를 ODBC를 사용하...
옥현수
•
2000.02.08 03:08
필드를 소문자로 했는 데로 안됩니다. 다른 문제인 거 같은 데, 다시 검토해주시면 감사하겠습니다. ...
초보
2000.02.08 02:19
0
COMMENTS
/
0
LIKES
dbchart 출력에 관해서
유니
2000.02.08 01:55
0
COMMENTS
/
0
LIKES
분류먼저 해주시길 부탁드립니다.
장철희
•
2000.02.08 01:43
3
COMMENTS
/
0
LIKES
[초보질문] 델파이5.0에서 ms sql server7.0을 연결할려고 하는데....?
최원실
•
2000.02.08 03:00
장철희 wrote: > 설 잘 보내셨는지요... ^^ > > 현재 저는 델파이 5.0을 사용하고 있습니다. > 네트웍...
장철희
•
2000.02.08 04:09
답변에 감사드립니다. 제가 현재 만들고 있는 프로그램은요 델파이 5를 사용 ftp에 접속해서 일정한 양식...
이런
•
2000.02.09 03:27
장철희 wrote: > 답변에 감사드립니다. > 제가 현재 만들고 있는 프로그램은요 > 델파이 5를 사용 ftp에...
<<급>> 초보올림
•
2000.02.08 01:42
2
COMMENTS
/
0
LIKES
새로운 필드에 구한 값 넣기
강인규
•
2000.02.08 02:55
//뭐 이런식이면 되지않을지..... var s1,s2 : string; ageday : Tdate; i : integer; begin /...
최원실
•
2000.02.08 02:25
초보올림 wrote: > * 사용환경 : 델파이4/ Windows 98 > * 에러 메시지 : > 안냐세요~~~^^* > > 다...
초보왕
•
2000.02.08 00:45
2
COMMENTS
/
0
LIKES
고수님의 조언부탁(StringGrid)
초보
•
2000.02.08 02:39
초보왕 wrote: > StringGrid에서 더블클릭을 하였을때 > 더블클릭한 위치를 알수있는 방법좀 가르쳐 주세...
최은창
•
2000.02.08 01:17
초보왕 wrote: > StringGrid에서 더블클릭을 하였을때 > 더블클릭한 위치를 알수있는 방법좀 가르쳐 주세...
강기룡
•
2000.02.08 00:40
2
COMMENTS
/
0
LIKES
[급질문]DBGrid에서 필드의 데이터에 접근하는 방법은?
최원실
•
2000.02.08 01:40
강기룡 wrote: > > 델초보자입니다. > 디비그리드에서 필드의 데이터에 접근하는 방법을 알고싶습니...
최은창
•
2000.02.08 01:22
강기룡 wrote: > > 델초보자입니다. > 디비그리드에서 필드의 데이터에 접근하는 방법을 알고싶습니...
김진호
•
2000.02.08 00:06
1
COMMENTS
/
0
LIKES
EInOutError with message 'I/O error 103'
배불뚝
•
2000.02.08 01:37
김진호 wrote: > 다음과 같이 파일 입출력을 작성하여 보았습니다. > > AssignFile(F, filename); ...
sun
2000.02.08 00:00
0
COMMENTS
/
0
LIKES
[요청}입력프로그램 예제 좀 보내주세요..
조광석
2000.02.07 22:12
0
COMMENTS
/
0
LIKES
분류먼저 해주시길 부탁드립니다.
민석이
•
2000.02.07 21:59
1
COMMENTS
/
0
LIKES
데이타 베이스
강인규
•
2000.02.07 23:50
뭐 정확히 내용은 모르지만(쩝~) @#$.db 화일은 데이터를 저장하는 곳이구 @#$.px, x01....,y01....등은 ...
왕초보
2000.02.07 21:11
0
COMMENTS
/
0
LIKES
프린터 출력에 있어... 급..급..
초짜
•
•
2000.02.07 20:54
4
COMMENTS
/
1
LIKES
폼간의 데이타 전달...고수님들..
어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에 그 값을 적용하려고 하니 access violation 에러가 계속 나네요.. 고수 님들 부탁합니다.
도움받은이
•
2000.02.08 07:37
form1에서 form2.showmodal; if form2.modalresult = mrOk then begin form1.text ...
강인규
•
2000.02.07 23:46
혹시 uses절을 선언 안한것이 아닌지... 그리구 modal이 종료될때 (close Event가 되겠지요?)선언된 내용...
최원실
•
2000.02.07 23:20
초짜 wrote: > 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한 > 값을 결정하고 ...
kingdol
•
2000.02.07 23:11
초짜 wrote: > 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한 > 값을 결정하고 ...
초짜
2000/02/07 20:54
Views
314
Likes
1
Comments
4
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
form1에서
form2.showmodal;
if form2.modalresult = mrOk then
begin
form1.text := form2.edit1.text;
....이렇게 작업을
end else
begin
.... 작업
end;
form2.free; //이렇게 작업을 한 후에 폼을 메모리에서
//해제 해 주어야만 메모리 에러가 나지 않습니다.
//참 폼2 에서는 폼을 닫기 위한 다른 작업은 안해 주셔도 됩니다.
close라든가 하는것들...modalresult := mrOk, mrCancel로 충분함....
그리고 나중에 작업후 free를....
form2에서
어떤작업을하고...
확인버튼에서
modalresult := mrOk; //이렇게 하면 폼이 닫힙니다.
취소버튼에서
modalresult := mrCancel; //마찬가지로 폼이 닫힙니다.
초짜 wrote:
> 어떤 폼에서 새로운 폼을 showmodal로 띄었는데..새로뜬 폼에서 어떠한
> 값을 결정하고 새로 뜬 폼이 close 되면서 원래의 폼의 에디트 콘트롤에
> 그 값을 적용하려고 하니 access violation 에러가 계속 나네요..
> 고수 님들 부탁합니다.