1、我是想在一个窗体Image中显示图片,用Openpicturedialog,点保存的话将Image中的图片写入到数据库中;同时我想让图片在另一个窗体的DBImage中显示,请问如何实现呢?显示图片的代码为:
procedure TForm3.Button3Click(Sender: TObject);begin
  if OpenPictureDialog1.Execute then
  Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
end;
这样图片在Image中的显示没有问题,并且我将Image存入到数据库图片字段代码为:
Unit3.DataModule3.ADOTable1.FieldByName('Userphoto').Assign(Image1.Picture.Graphic);
但在另一个窗体的DBImage中我要显示存放在数据库的图片,DATAFIELD设置成数据库图片字段后,编译能通过,但一运行后仍有提示*.EXE raised exception class EInvalidGraphic with message 'bitmap image is not valid'.(说明一下,数据库图片字段有空数据)
2、如何在关闭非主窗体时,同时关闭主窗体,结束应用程序??我用的是
procedure TForm2.FormClose(Sender: TObject);
begin
Application.Terminate;
end;
3、如何让登录窗体在程序运行时先于主窗体显示,登陆成功后主窗体显示。请问代码如何编写或者属性如何设置。
请各位高手不吝赐教,真的很急!!!!

解决方案 »

  1.   

    3.在工程文件里(*.dpr)主窗体建立之前写代码frmLogin:=TfrmLogin.Create(nil);
    try
      frmLogin.ShowModal;
    finally
      frmLogin.Free;
    end;
    ...
      

  2.   

    楼上,我按照你的提示做了,但出现溢出提示为:*.exe raised exception class EAccessViolation with message 'Access violation at address 004e169e in module'*.exe'.Read of address 00000070',另外第一个问题您能帮我看一下吗?真的很急!!
      

  3.   

    参考一下吧。
    http://community.csdn.net/Expert/topic/4372/4372093.xml?temp=.6376154
      

  4.   

    必须采用BITMAP格式图像(BMP),要不就自己写入数据库,读出后,自己绘制在TIMAGE控件上。