Merhaba Cüneyt bey;
Öncelikle iyibayramlar dilerim. Açıklamanız ve uygulamanız çok güzel teşekkür ederim.
Benim öğrenmek istediği konuı; menüden seçip açtığımız bir form açıkken yine menüden başka bir form açmak istediğimizde diğer formun kapanmasını nasıl sağlayabiliriz. Yada bir form açıkken direk yeni kayıtla başlamasını nasıl sağlarız. Bunları butonla yaptığımızda kod yardımı ile yapabildim ama menülerle olan bu uygulamanızda bu isteğimi gerçekleştiremedim. Konu hakkında bilgilerinizi rica ederim.Teşekkürler.
merhaba,
öncelikle bir fonksiyon oluşturuyoruz:
sonra anahtarı açılan formun etkinleştirildiğinde olay yordamına Call... yapıştırıyoruz o kadar..
burda ki olay şu; diyelimki siz bir form açtınız bu etkin olan formun dışındaki tüm formlar kapanıyor. isterseniz kapanmasını istemediğiniz formu Anamenüadi yazdığım yere yazabilirsiniz. yani ana münüyü buraya yazarak kapanmasını engelliyorsunuz.
kodlama bölümünde her formun boş yerine veya şaşırmamak açısından Option Compare Database 'nin altına aşağıdaki fonksiyonu aynen yapıştırıyoruz.
Function TumFormlarKapansin()
Dim AnaMenu As Object
Dim strName As String
For Each AnaMenu In Application.CurrentProject.AllForms
If AnaMenu.Name <> "Anamenüadı" And AnaMenu.Name <> Me.Name Then 'ana menüyü buraya yazıyoruz ki o formu kapatmasın.
'sadece aktif açık olan menü dışındakileri kapatsın.
DoCmd.Close acForm, AnaMenu.Name, acSaveYes
End If
Next AnaMenu
End Function
Daha sonra her formun Etkinleştirildiğinde Olay Yordamına aşağıdaki kodu yapıştırıyoruz:
Call TumFormlarKapansin
Saygılar,
Merhaba Cüneyt Bey;
Yazmış olduklarınızı konu başındaki örnek uygulamanıza yaptım. sorunsuz çalışıyor. Menü eklenmiş diğer uygulamalarımdada dilerim sorunsuz çalışır. çok teşekkür ederim.
Bende bu soruyu size yazmadan önce accessi kurcalarken var olan macrolardan bir macro seçip daha sonrada araçlar-macro-macroları visual basic e dönüştürden bir şeyler yapmaya çalıştım. ordan visual basic kodları haline dönüştürülen macro kodundan da benim bu istediğim yapılabilinirmiydi yoksa yanlış bir yöntem mi benim yaptığım? Fikrinizi öğrenmek istedim bu konuda.
akd yazdı:Merhaba sayın cuneyt,
aktif form haricindekilerin kapanması için yazmış olduğunuz kodda hata oluşuyor
DoCmd.Close acForm, AnaMenu.Name, acSaveYes
bu satır ve Me.Name
kodları hata veriyor.
Neden acaba?
Merhaba,
bir hata yok küçük bir fazlalık vardı.o da sorun yapmıyor. yanlış yere işledin sanırım.
örnek ilişikte.
merhaba dostum,
örnek olarak komut düğmesine koydum , siz onu istediğiniz gibi istediğiniz yere koyabilirsiniz tabiki..
şimdi bir arkadaşımız da çıkıp "hayır formun yüklendiğinde olay yordamına değil, açıldığında olay yordamına " Call TumFormlarKapansin " yapıştırılacak derse ve böyle olması daha iyi değilmi derse..
))).. istediğiniz yere istediğiniz şekilde kullanabilirsiniz tabiki.
saygılar,
Mouse Sağ tuş menü ile ilgili açıklamalarınız çok işime yaradı.
Tam aradığım şeydi.
Toolbar ve Üst Menü'leri kullanmama rağmen Mouse ile Sağ tuş menü kullanımını ve Shortcut menu'nun ne olduğunu bulamamıştım.
Paylaşımınız için teşekkürler.