Skip to main content

AccessTr.neT


2016 Acces İle Resim Ekleme Sorunu

2016 Acces İle Resim Ekleme Sorunu

#7
(09/01/2024, 18:03)atoykan yazdı:
(08/01/2024, 17:20)atoykan yazdı: Kodunuzda
Kod:
Hedef = CurrentProject.Path & "\resim\" & Me.ADI & "-" & Me.TC_NO & ".jpg"
kısmı fotoğrafın  seçilip kopyalanacağı Resim adlı klasörü arıyor ve yoksa hata veriyor.
Kod:
Hedef = CurrentProject.Path & "\" & Me.ADI & "-" & Me.TC_NO & ".jpg"
şeklinde değiştirerek doğrudan projenin olduğu klasöre kaydedebilirsiniz,

  1. Koddan resim çıkartılmış halde
    buradan izleyebilirsiniz kayıt yaptığını Resim ibaresi çıkartılmış
  2. Veritabanının kayıtlı olduğu klasöre Resim klasörü eklenmiş halde
    buradan izleyebilirsiniz kayıt yaptığını Resim klasörü eklenmiş olarak
  • Atoykan kardeşim çok uğraşmışsın, ilgin ve yazdıkların için teşekkür ederim. Bendeki sorun resim klasörü ile ilgili bir sorun değil. Resim ekle düğmesine tıkladığımda hiç bir şey açılmıyor, sende açılıyor. 2003 ofiste açılıyor, 2016'da açılmıyor. Resim klasörü olsa da olmasa da açılmıyor. Versiyon farkından dolayı ptrSafe eklemiştim, bundan kaynaklanıyor sanırım ama çözümü ne bilemiyorum?
  • Son Düzenleme: 10/01/2024, 14:00, Düzenleyen: yturan.
    Cevapla
    #8
    2016 Acces'te mdb uzantılı dosyayı açamadığım için, kodlarda Declare ifadesinden sonra "PtrSafe" ifadesini yerleştirmem gerektiği yazıyor sitede...

    Yaptığımda program 2016 Access7te hata vermeden açılıyor. Ancak resim ekle düğmesi çalışmıyor. Hata da vermiyor ama çalışmıyor. Açmama nedenini bu koda bağlıyorum. Örneği yukarıda... Bunun bir yolu yordamı var mıdır kardaşlar?
    Cevapla
    #9
    Zor demek ki... Yine de teşekkürler kardaşlar...
    Cevapla
    #10
    zor olmasından değil ama forumda yığınla resim yada dosya seçme ile ilgili konu var,
    o başlıkları araştırdınız mı?
    sorun sadece resim seçimi için dialog penceresinin açılması ise
    Kaynak = GetOpenFile_CLT("C:\", "Resim Seçiniz...") kodunu silip yerine aşağıdakileri eklemeyi dener misiniz?
    Kod:
    '_____________________________________________Dosyaseç
    Dim fDialog As Object, varFile
    Set fDialog = Application.FileDialog(3) 'msoFileDialogFilePicker = 3)

       With fDialog

          ' Allow user to make multiple selections in dialog box
          .AllowMultiSelect = False
                
          ' Set the title of the dialog box.
          .Title = "Resim Seçiniz..."

          ' Clear out the current filters, and add our own.
          .Filters.Clear
    '      .Filters.Add "Access Databases", "*.MDB"'bu kısımlar dosya uzantıları için
    '      .Filters.Add "Access Projects", "*.ADP"
          .Filters.Add "All Files", "*.*"


          If .Show = True Then

             'Loop through each file selected and add it to our list box.
             For Each varFile In .SelectedItems
             Kaynak = varFile
             Next

          Else
             MsgBox "Seçim İptal edildi!."
          End If
       End With

    Cevapla
    #11
    Forumda resim ekle ile ilgili tüm konuları araştırdım. Personel programlarındaki resim ekle kısımlarına baktım. Bu söylediğim hiç birinde olmadığı için konu açtım. Yani sitede verilen örnek uygulama benim bu paylaştığım zaten. 2016 Access ile sitedeki örnek uygulama hata verdiği için yazdım. Bu söylediğiniz değişikliği yapınca resim açılıyor artık. Ancak diyelim 5'inci kaydı resim ekliyorsunuz, ekliyor ama 1'inci kayda getiriyor. Sonra 6.kayda ekleyeceksiniz, ekliyorsun, ekliyor ama yine 1'inci kayda getiriyor. Bu da kaydı zorlaştırır her defasında 1.kayıttan dönmek... Yine kolaydır eminim sizin için biliyorum... İlginiz için desteğiniz için teşekkür ederim, iyi ki varsınız...
    Cevapla
    #12
    dosyanızı inceleme fırsatım yeni oldu 2 hata saptadım, 3. madde sadece ilk kayda gitme sebebiyle ilgili
    1 - en önemli hatanız resim ekleme yordamınızın ismini hatalı girmişsiniz;
    siz resim seçme yordamını
    FileCopy Kaynak, Hedef olarak çağırmışsınız oysa çalışmanızda böyle bir yordam yok
    CopyFile Kaynak, Hedef yazmalıydınız

    2 - eklediğiniz çalışmada siz Dim Kaynak, Hedef olarak tanımlamışsınız byval hatası verebiliyor o nedenle o kısmı
    Dim Kaynak As String, Hedef As String şeklinde düzenlemeniz yerinde olur
    3 -
    (15/01/2024, 08:54)yturan yazdı: Ancak diyelim 5'inci kaydı resim ekliyorsunuz, ekliyor ama 1'inci kayda getiriyor. Sonra 6.kayda ekleyeceksiniz, ekliyorsun, ekliyor ama yine 1'inci kayda getiriyor. Bu da kaydı zorlaştırır her defasında 1.kayıttan dönmek..
    bunun sebebi kopyalama işleminden sonra Me.Requery kodunu çalıştırmanız, bu kod formu yenilediği için ilk kayda gidiyor.
    Me.Requery kodunun kullanılmasının özel bir sebebi yoksa Me.Requery yerine
    Kod:
    ResimCercevesi.Picture = CurrentProject.Path & "/resim/" & Me.ADI.Value & "-" & Me.TC_NO & ".jpg"
    kodunu kullanabilirsiniz.
    Not: yukardaki açıklamalar eklediğiniz dosyayla ilgili
    eğer resim seçmek için benim önerdiğim kodu kullandıysanız sadece 3. maddedeki değişikliği yapmanız yeterli
    iyi çalışmalar

    not: eklediğiniz örnekler çalışmalarda lütfen kişisel veriler olmasın. kişilere ait fotoğrafla olduğundan dosyanızı kaldırdım. fotoğrafları sildikten sonra tekrar ekleyebilirsiniz
    Cevapla

    Bir hesap oluşturun veya yorum yapmak için giriş yapın

    Yorum yapmak için üye olmanız gerekiyor

    ya da
    Task