ok, el problema q tengo es q, cuando le voy nuevo usuario, quisiera q los DBEdit aparecieran en blancoy tambien los INPUTMASK, pero cual le doy nuevo user me aparecen los values q estoy dando en el codigo d abajo de poner el user
Código Delphi
[-]procedure TForm1.Button2Click(Sender: TObject);
begin
with ADOTable1 do begin
insert;
FieldByName('UserID').Value := '9999999';
FieldByName('LastName').Value := 'LastName';
FieldByName('Name').Value := 'Name';
FieldByName('Address').Value := 'Address';
FieldByName('PostalCode').Value := 'Postal Code';
FieldByName('City').Value := 'City';
FieldByName('Phone').Value := '8787878';
FieldByName('Email').Value := 'Email';
FieldByName('Birthday').Value := '12/31/1900';
post
end ;
SaveJpegToTable(ADOTable1, ADOTable1Picture, 'button.jpg') ;
end;
tambien digamos si le doy dos veces click al boton agrEGAR nuevo user si no he metido los cambios automaticamnte se guardan en la tabla los datos d arriba por ejmpplo el userid = 99999, entonces eso me traba la base d datos diciendo q ya esta metido antes y no se puede agregar otro. entonces quisiera saber como seria el codigo q lleva el signo mas del navegador predise;ado de delphi y q me aparescan los inputmask en blanco.
y este es para guardar el user, aki se tenria q ver lo d la validacion de lo del email pero no me funciona asi como esta arriba.
Código Delphi
[-]
If (DBEdit2.Text = '') then
ShowMessage('User Id is Empty')
else
if (Pos(DBEdit2.Text, '@') <> 0) then
if (Pos(DBEdit2.Text, '.') <> 0) then
begin
ADOTable1.Edit;
DBEdit2.text := Maskedit1.Text ;
DBEdit6.text := Maskedit2.Text ;
DBEdit8.text := Maskedit3.Text ;
DBEdit10.text := Maskedit4.Text ;
ADOTable1UserID.AsString := DBEdit2.text;
ADOTable1LastName.AsString := DBEdit3.text;
ADOTable1Name.AsString := DBEdit4.text;
ADOTable1Address.AsString := DBEdit5.text;
ADOTable1PostalCode.AsString := DBEdit6.text;
ADOTable1City.AsString := DBEdit7.text;
ADOTable1Phone.AsString := DBEdit8.text;
ADOTable1Email.AsString := DBEdit9.text;
ADOTable1Birthday.AsString := DBEdit10.text;
ADOTable1.Post;
end
else
Showmessage ('The email entry is wrong');
end;
ARGEGAR UNA PICT A LA BASE D DATOS JPEG Y BMP
Código Delphi
[-]
const
JPEGstarts = 'FFD8';
BMPstarts = '424D';
var
Form1: TForm1;
implementation
Uses jpeg;
{$R *.dfm}
function JpegStartsInBlob (PicField:TBlobField):integer;
var
bS : TADOBlobStream;
buffer : Word;
hx : string;
begin
Result := -1;
bS := TADOBlobStream.Create(PicField, bmRead);
try
while (Result = -1) and (bS.Position + 1 < bS.Size) do
begin
bS.ReadBuffer(buffer, 1);
hx:=IntToHex(buffer, 2);
if hx = 'FF' then begin
bS.ReadBuffer(buffer, 1);
hx:=IntToHex(buffer, 2);
if hx = 'D8' then Result := bS.Position - 2
else if hx = 'FF' then bS.Position := bS.Position-1;
end; end; finally
bS.Free
end; end;
procedure SaveJpegToTable(Table: TADOTable; PicField:TBlobField; sPicPath: string);
var
fS : TFileStream;
begin
fs:=TFileStream.Create(sPicPath, fmOpenRead);
try
Table.Edit;
PicField.LoadFromStream(fs);
Table.Post;
finally
fs.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
bS : TADOBlobStream;
Pic : TJpegImage;
begin
if opendialog1.execute then
begin
SaveJpegToTable(ADOTable1, ADOTable1picture, Opendialog1.filename);
end;
bS := TADOBlobStream.Create(AdoTable1Picture, bmRead);
try
bS.Seek(JpegStartsInBlob(AdoTable1Picture), soFromBeginning);
Pic:=TJpegImage.Create;
try
Pic.LoadFromStream(bS);
Image1.Picture.Graphic:=Pic;
finally
Pic.Free;
end;
finally
bS.Free
end;
end;
espero entienda lo q estoy haciendo.
la tabla esta en access y estoy usando adotable y adoconnection.