EHLIB is originally a very good control, but TDBediteh's readonly has some problems, and there is no correction between subsequent versions. After tracking the source code, found
Procedure tcustomDbediteh.cmenter (Var Message: Tcmenter);
Begin
SetFocused (TRUE);
inherited;
IF AutoSelect and not (cslbuttondown in controlstate).
IF syslocale.fareast and fdataLink.canmodify the
SetControlReadOnly (false); //
If you have any questions, change readonly to TRUE after the associated data set can always be repaired.
// Change, therefore asked here.
END;
// View the readonly property declaration, the domain variable FREADONLY has a problem, will be changed.
SetControlReadOnly (FREADOONLY); // Modify this function
// Earlier, I don't know, but I have this problem since version 2.5, which can be solved according to this method, readonly problem.
Compile (EHLIB7.0, or EHLIB6.0, dynamic package). If you release it with a package, you can also cover the original BPL file.
In addition, in order to support D6, D7-specific flat-style interface. Add in each TDBediteh, TDBDATETIMEEH, etc. in unit dbctrsheh, etc.
Property beveledge;
Property Bevelinner;
Property Bevelkind Default Bknone;
Property begouter;
We can set BordersType: = bowsnone; bevelkind: = bktile; get a flat style; you can add a lot of style to your program editing control.
Don't forget to compile the package file.