Tôi có đối tượng kiểu TValueListEditor chứa các tham số nhất định của hàm trong cột Khóa và đầu vào cho cột giá trị thích hợp để kiểm tra hàm. Tôi đã thêm một mặt nạ chỉnh sửa vào đầu vào giá trị tùy thuộc vào loại dữ liệu mà tham số phải là. Ví dụ tham số Num1 là kiểu int, vì vậy đầu vào sẽ chỉ là số, nhưng vì tôi không biết chính xác số chữ số trước, có cách nào để chỉ định EditMask không có độ dài cố định của các ký tự không?Delphi đặt Chỉnh sửa Mặt nạ không có độ dài cố định của các ký tự
Nếu bạn nhìn vào mã bên dưới, nếu tôi cần giá trị kiểu float, tôi phải có một điểm, nhưng tôi không muốn điểm được xác định trước tại vị trí chính xác đó.
if parser.sParams.Values[parser.sParams.Names[i]]='float' then
begin
lstValParamValues.ItemProps[parser.sParams.Names[i]].EditMask:='#########.#';
end
Có lẽ tôi nên triển khai một cái gì đó như regex trên EditMask? Hoặc là có một cách khác để thực hiện xác nhận giá trị đầu vào?
sử dụng OnGetEditMask để thay đổi editmask dựa vào loại lĩnh vực see: http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html /delphivclwin32/ValEdit_TValueListEditor_OnGetEditMask.html –