怎样在VB中编辑照片?

解决方案 »

  1.   

    shell 照片编辑器的路径,3
      

  2.   

    http://www.china-askpro.com/msg41/qa82.shtml
      

  3.   

    应当可以用picture 
    好像可以用固定的算法
    就可以
      

  4.   

    用图像编辑控件吧,系统中有的,很好用,2000下好像叫“Kodak 图像编辑控件”,呵呵,记不清了
      

  5.   

    '''以下的Cn是定義的連接數據庫的對象
    '''保存相片
    Public Sub SavePictureToSql()
    Dim RsPic As New ADODB.Recordset   '''用來打開要保存相片的表
    Dim StrPic As New ADODB.Stream     '''用來取得相片的二進制碼,并向字段中添加
        '''將要保存的相片加到Stream對象中
        With StrPic
             .Type = adTypeBinary       '''將對象的類型設置為二進制
             .Open                      '''打開
             '''假如現在你已將要保存的相片加入到控件Image中
             .LoadFromFile CommonDialog.filename  '''取得要保存的相片
        End With
        
        With RsPic
             If .State = 1 Then .Close
             '''打開表
             .Open "Select Imgfield From Table", CN, adOpenDynamic, adLockOptimistic
             .AddNew    '''新增
             .Fields(Imgfield) = StrPic.Read
             .Update    '''更新保存
             MsgBox "相片保存成功!", vbInformation
             .Close
        End With
        
        Set RsPic = Nothing
        Set StrPic = Nothing
    End Sub'''讀取相片
    Private Sub LoadPictureFromSql()
    Dim RsPic As New ADODB.Recordset   '''用來打開要讀取相片的表
        With RsPic
            If .State = 1 Then .Close
            .Open "Select Imgfield From Table", CN, adOpenDynamic, adLockOptimistic
            If .RecordCount > 0 Then  '''判斷是否有數據
                Set Image1.DataSource = RsPic   '''將相片賦給Image
                    Image1.DataField = RsPic(Imgfield).name
            End If
            .Close
        End With
        
        Set RsPic = Nothing
    End Sub試一下行不?
      

  6.   

    存图片有两种方式
      第一、存路径。
                  存相对路径。把图片报存在相对地址。
        这种方法可以快速、省代码。
      第二、存数据流
       代码如下:
      Private Sub Command1_Click() '添加图片
        Dim cnn As ADODB.Connection
        Dim rs As ADODB.Recordset
        Set cnn = New ADODB.Connection
        Set rs = New ADODB.Recordset
        cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\数据库\db1.mdb;Persist Security Info=False"
        rs.Open "select * from t1", cnn, adOpenKeyset, adLockBatchOptimistic
        Dim mstream As ADODB.Stream
        Set mstream = New ADODB.Stream
        mstream.Mode = adModeReadWrite
        mstream.Type = adTypeBinary
        mstream.Open
        mstream.LoadFromFile "e:\13.jpg"
        rs.AddNew
        rs!s1 = mstream.Read
        rs.UpdateBatch
        mstream.Close
        rs.Close
        cnn.Close
    End SubPrivate Sub Command2_Click() '读出
        Dim cnn As ADODB.Connection
        Dim rs As ADODB.Recordset
        Dim mstream As ADODB.Stream
        
        Set cnn = New ADODB.Connection
        Set rs = New ADODB.Recordset
        cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\数据库\db1.mdb;Persist Security Info=False"
            rs.Open "select * from t1", cnn, adOpenKeyset, adLockBatchOptimistic
        Set mstream = New ADODB.Stream
        mstream.Mode = adModeReadWrite
        mstream.Type = adTypeBinary
        
        mstream.Open
        mstream.Write rs!s1
        mstream.SaveToFile "e:\sxs\15.jpg", adSaveCreateOverWrite
        Picture1.Picture = LoadPicture("e:\15.jpg")
        rs.Close
        cnn.Close
    End Sub
       这是用数据流的形式保存 其字段类型为 image 类型。
        这样是以十六进制的形式保存图像。
       但是占用数据库,最好把图片的格式调好。
      

  7.   

    VB中?VB的开发环境中?——添加为相关文档就行了,VB会启动相关程序进行处理的。
      

  8.   

    cacao32这个名字感觉是不是有什么特别的含义!
      

  9.   

    就算是初学者,我想也不会有人给你完全的代码了。
    你不要要求太高,
    如果要联系数据库的话,干脆用
    低版本Access+DAODC+PictureBox数据绑定
    得了。简单而实用。
      

  10.   

    不要使用ADO,会有些麻烦,对初学者不适合,
    还是简单点好,ADO+PictureBox绑定可以读不能写。
    ADO写图片要用代码控制。