如果控件是Tedit,在属性passwardchar里录入“*”时,编译后,运行时,比如录入“123”,edit1就显示“***”,如果我想在dbehlib的表格的第二列里,录入 “123”,也显示“***”,请问怎么做?

解决方案 »

  1.   

    如果是cxGrid的话,可以用列的OnGetDisplayText事件来处理.你看看DBEHLIB的列有没有相关的事件.如果有,你可以试试
      

  2.   

    可以在這列的OnGetCellParams寫類似代碼:
    procedure TForm1.DBGridEh1Columns2GetCellParams(Sender: TObject;
      EditMode: Boolean; Params: TColCellParamsEh);
    begin
      Params.Text := '******';
    end;
    可能與你的要求有點差距,你自己可以改一改。
      

  3.   


    type
      TForm1 = class(TForm)
        dbgrdh1: TDBGridEh;
        con1: TADOConnection;
        qry1: TADOQuery;
        ds1: TDataSource;
        strngfldqry1YHMC: TStringField;
        strngfldqry1YHMM: TStringField;
        dbedtYHMM: TDBEdit;//datasource指向ds1;fieldname为YYMM(用户密码);visible设为false;PasswordChar设为*    
          procedure dbgrdh1Columns1GetCellParams(Sender: TObject;
          EditMode: Boolean; Params: TColCellParamsEh);
        procedure dbgrdh1DrawColumnCell(Sender: TObject; const Rect: TRect;
          DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.dbgrdh1Columns1GetCellParams(Sender: TObject;
      EditMode: Boolean; Params: TColCellParamsEh);
    begin
      Params.Text := '******';
    end;procedure TForm1.dbgrdh1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumnEh; State: TGridDrawState);
    begin
      if (gdFocused in State) then
      begin
        if (Column.Field.FieldName = 'YHMM') then
        with dbedtYHMM do
        begin
          Left := Rect.Left + dbgrdh1.Left + 1;
          Top := Rect.Top + dbgrdh1.Top + 1;
          Width := Rect.Right - Rect.Left + 2;
          Width := Rect.Right - Rect.Left + 2;
          Height := Rect.Bottom - Rect.Top + 2;      Visible := True;
        end;
      endend;
      

  4.   

    dbedtYHMM: TDBEdit;//datasource指向ds1;DataField为YYMM(用户密码);visible设为false;PasswordChar设为*