Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[12737] ModalResult 리턴에 대해서
장재영 [jangjy1216] 1535 읽음    2009-06-29 19:20
ModalResult 리턴에 대해서
품목 명칭 찿는 데요 없으면 조회 화면을 띄워서 선택후
A FORM 유닛에서 품목 명칭 찿는 데요 없으면  B FORM 조회 화면을 띄워서 선택후 이때 ModalResult := mrOk 해줌 결과값 1임.
A FORM 결과 FORM ModalResult 항상 2임.

어디가 잘못되었나요?

A UNIT (TfrmDrwMastI) 에서

unit UDrwMastI;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdInsMDForm, Db, DBTables, DBCtrls, StdCtrls, Buttons, ExtCtrls, Mask,
  CMEdit, CMDBCombo, CMDBLookupCombo, CMDBEdit, CMGrids, CMDBGrids, Grids,
  DBGrids;

type
  TfrmDrwMastI = class(TStdlnsMDForm)
    LblSuju: TLabel;
    EdSCode: TCMEdit;
    EdECode: TCMEdit;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    EdDrwName: TCMDBEdit;
    EdDrwNo: TCMDBEdit;
    EdCust: TCMDBEdit;
    EdItem: TCMDBEdit;
    EdDesign: TCMDBEdit;
    EdHKey2: TCMEdit;
    ComboCust: TCMDBLookupComboBox;
    ComboItem: TCMDBLookupComboBox;
    EdHKey1: TCMEdit;
    Label5: TLabel;
    EdTKey1: TCMEdit;
    Label19: TLabel;
    Label20: TLabel;
    Label22: TLabel;
    Label27: TLabel;
    EdCnt: TCMDBEdit;
    EdTDesign: TCMDBEdit;
    EdfUnit: TCMDBEdit;
    EdBigo: TCMDBEdit;
    ComboItmCode: TCMDBLookupComboBox;
    CMDBGrid: TCMDBGrid;
    QItmHMast: TQuery;
    DSItmHMast: TDataSource;
    QItmTMast: TQuery;
    DSItmTMast: TDataSource;
    QCstMastH: TQuery;
    DSCstMastH: TDataSource;
    QryDel: TQuery;
    QSujuMast: TQuery;
    Label25: TLabel;
    EdTotCnt: TCMDBEdit;
    BomCopy: TBitBtn;
    QBomMast: TQuery;
    Query1: TQuery;
    Label26: TLabel;
    EdKiBonCnt: TCMDBEdit;
    Label10: TLabel;
    EdMEGbn: TCMDBEdit;
    ComboMEGbn: TCMDBComboBox;
    QryTSum: TQuery;
    qryDetailSujuSeq: TIntegerField;
    qryDetailSeqCnt: TIntegerField;
    qryDetailItem: TStringField;
    qryDetailDesign: TStringField;
    qryDetailIOUnit: TStringField;
    qryDetailKiBonCnt: TFloatField;
    qryDetailCnt: TFloatField;
    qryDetailPrice: TFloatField;
    qryDetailTaxAmt: TFloatField;
    qryDetailVatAmt: TFloatField;
    qryDetailMaker: TStringField;
    qryDetailBigo: TStringField;
    qryDetailWight: TFloatField;
    qryDetailSizeX: TFloatField;
    qryDetailSizeY: TFloatField;
    qryDetailSizeH: TFloatField;
    qryDetailMEGbn: TStringField;
    qryDetailSujuCode: TStringField;
    qryDetailFileGbn: TStringField;
    qryDetailSujung: TIntegerField;
    Label1: TLabel;
    EdCstT: TCMDBEdit;
    ComboCstT: TCMDBLookupComboBox;
    QCstMastT: TQuery;
    DSCstMastT: TDataSource;
    EdItName: TDBEdit;
    Label6: TLabel;
    procedure EdHKey1Exit(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure bitBtnQueryClick(Sender: TObject);
    procedure EdHKey2KeyPress(Sender: TObject; var Key: Char);
    procedure EdTKey1KeyPress(Sender: TObject; var Key: Char);
    procedure EdTKey1Click(Sender: TObject);
    procedure bitBtnPostClick(Sender: TObject);
    procedure dSrcMasterDataChange(Sender: TObject; Field: TField);
    procedure dSrcDetailDataChange(Sender: TObject; Field: TField);
    procedure BomCopyClick(Sender: TObject);
    procedure EdPriceExit(Sender: TObject);
    procedure EdKiBonCntExit(Sender: TObject);
    procedure EdTotCntExit(Sender: TObject);
    procedure EdTDesignExit(Sender: TObject);
    procedure EdMEGbnExit(Sender: TObject);
    procedure ComboMEGbnClick(Sender: TObject);
    procedure ComboItmCodeClick(Sender: TObject);
    procedure EdBigoExit(Sender: TObject);
    procedure EdTDesignKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
    procedure HdTailSum1(pCode :String; pSeq : Integer) ;
    Procedure ItemStore() ;

  public
    { Public declarations }
  end;

var
  frmDrwMastI: TfrmDrwMastI;
    mSuju,mMEGbn : String ;
    mSeq,mIOGbn : Integer ;
    mNKey : ARRAY[0..1] OF Integer ;
    mAmt : Double ;
    FocusLook: TWinControl;

implementation
  Uses Dm,MsgConst,FuncS,UItemSearch ;

{$R *.DFM}

procedure TfrmDrwMastI.EdTDesignKeyPress(Sender: TObject; var Key: Char);    명칭이 없음 조회화면 띄워주고 DB에 넣어줌.
begin
  inherited;
    If Key = #13 then Begin
//       FrmItemSearch := TFrmItemSearch.Create(Salf);
       mMItFd[2] := EdTDesign.Text ;
//       mItRigh := QItemSearch(mMItFd[2])
       if mMItFd[2] <> QItmTMast.FieldByName('Design').AsString THEN Begin  <-- 명칭이 같은게 없으면
         FrmItemSearch := TFrmItemSearch.Create(SELF);                      <--
         FrmItemSearch.ShowModal;
//         FrmItemSearch.Show;

       end ;
    if FrmItemSearch.ModalResult = mrOK then          <--- 여기가 문제임.(FrmItemSearch.ModalResult = 2, mrOK = 1 임
       qryDetail.FieldByName('Item').AsString := mMItFd[0] ;

        
    end ;
end;

//------

B FORM (TFrmItemSearch) 임
여기서 A FROM 선언 안해주었음.


procedure TFrmItemSearch.BitOkClick(Sender: TObject);
  Var I,K : Integer ;
begin
   FOR I := 0 TO dmModule.QItemMast.FieldCount -1 DO
      mMItFd[I] := dmModule.QItemMast.Fields.Fields[I].AsString ;

   dmModule.QItemMast.Close ;
   K := ModalResult ;
//   sHOWMESSAGE(INTTOSTR(K) + ' 번') ;
   ModalResult:= mrOk ;   여기가 제되대됨.(FrmItemSearch.ModalResult = 2, mrOK = 1 임
   Close ;
end;

+ -

관련 글 리스트
12737 ModalResult 리턴에 대해서 장재영 1535 2009/06/29
12738     Re:ModalResult 리턴에 대해서 장성호 2369 2009/06/29
12740         Re:ModalResult 리턴 순서 바꾸니 잘됩니다.! 장재영 1581 2009/06/30
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.