16/02/2011, 13:12
Access Penceresini Gizleme
16/02/2011, 15:42
Ayşavkı
Merhaba Sayın mehmetdemiral!!! örneğiniz 2003 de çalışmakta ancak 2007 de maalesef pencereyi gizlememekte 2003 de gizleme olayını zaten yapabilmekteyim 2007 de bu olayı nasıl yapabilirim ilgilenen arkadaşlara saygılar
16/02/2011, 20:27
mehmetdemiral
Ben 2007 kullanmadığım için denememiştim. Sayenize öğrenmiş oldum. 2010 kullanan arkadaşlar benim bahsettiğim yöntemle ilgili örneğimi deneyip bilgi verirlerse sevinirim. Belki 2010 ile çalışır da 2007 formatına dönüştürüp öyle deneriz 2007'de...
Bu arada siz de 2007'de shift tuşu ile açarak "farklı kaydet" ile 2007 formatına convert eder misiniz? Belki o zaman çalışır.
Çalışmamasının sebeplerine gelince, -tahminim- api kullanımı olabilir. Ama 2007 kullanmadığım için deneyemem. 2010 ile deneyeceğim söz...
Bu arada sayın Ayşavkı'nın yaklaşık olarak en az 4 aydır bu konuyla ilgili muhtelif yerlere sorular sorduğunu görüyorum. Benim önerim acilen 2010'a geçmenizdir. 2007 ile uğraşmayın bence. Ben size 2010 ile nasıl gizleme yapılacağını araştıracağım.
Bu arada siz de 2007'de shift tuşu ile açarak "farklı kaydet" ile 2007 formatına convert eder misiniz? Belki o zaman çalışır.
Çalışmamasının sebeplerine gelince, -tahminim- api kullanımı olabilir. Ama 2007 kullanmadığım için deneyemem. 2010 ile deneyeceğim söz...
Bu arada sayın Ayşavkı'nın yaklaşık olarak en az 4 aydır bu konuyla ilgili muhtelif yerlere sorular sorduğunu görüyorum. Benim önerim acilen 2010'a geçmenizdir. 2007 ile uğraşmayın bence. Ben size 2010 ile nasıl gizleme yapılacağını araştıracağım.
17/02/2011, 00:16
mehmetdemiral
Merhaba
Yaptığım araştırmalarda ribbon menünün kapatılması ile ilgili çok basit bit yöntem olduğunu gördüm. Bu işlem aynen CTRL+F1 kombinasyonunun yaptığını yapıyor. Bunu kullanmak için form load'a
Fakat tabii ki bu tek başına yeterli değil. Böylece kullanılan versiyona göre işlev gerçekleşir.
Gelelim asıl nesnelerin olduğu bölümün gizlenmesine. Bu kısma sanırım Nave Panel diyorlar.
artık bu sub'ın da eklenmesinden sonra form load'a bir satır daha eklenmeli.
Yaptığım araştırmalarda ribbon menünün kapatılması ile ilgili çok basit bit yöntem olduğunu gördüm. Bu işlem aynen CTRL+F1 kombinasyonunun yaptığını yapıyor. Bunu kullanmak için form load'a
DisplayRibbon False
yazmak yeterli. Tersi için de
DisplayRibbon true
yazılacak. Bunun için bir fonksiyon önerilir:
Public Sub DisplayRibbon(yShowIT)
'8/2/09 DLT
On Error Resume Next
If Application.Version >= 12 Then
If yShowIT Then
DoCmd.ShowToolbar "Ribbon", acToolbarYes
Else
DoCmd.ShowToolbar "Ribbon", acToolbarNo
End If
End If
End Sub
Fakat tabii ki bu tek başına yeterli değil. Böylece kullanılan versiyona göre işlev gerçekleşir.
Gelelim asıl nesnelerin olduğu bölümün gizlenmesine. Bu kısma sanırım Nave Panel diyorlar.
Public Sub DisplayNavPane(Optional IsVisible As Boolean = True)
Dim strTableName As String
On Error GoTo DisplayNavPaneError
DoCmd.Echo False
DoCmd.NavigateTo "acNavigationCategoryObjectType"
DoCmd.SelectObject acTable, , True
If IsVisible = False Then
DoCmd.RunCommand acCmdWindowHide
End If
DisplayNavPaneExit:
DoCmd.Echo True
Exit Sub
DisplayNavPaneError:
If Err.Number = 2544 Then
'Get the name of the first table in the mSysObjects table
strTableName = Dlookup ("Name", "mSysObjects", "[Type] = 1 AND [Flags] = 0")
Resume
Else
DisplayError ("Error encountered in DisplayNavPane subroutine!")
Resume DisplayNavPaneExit
End If
End Sub
artık bu sub'ın da eklenmesinden sonra form load'a bir satır daha eklenmeli.
DisplayNavPane False
Buraya kadar herşey tamam ama ben bunu 2010 ile denediğimde şu satır işletiliyor
DisplayError ("Error encountered in DisplayNavPane subroutine!")
ve "Error encountered in DisplayNavPane subroutine!" yazan bir mesajbox açılıyor. Siz bunu 2007'de bir deneyin bakalım. Ya bir yeri atlıyorum ya da bu 2010 ile uyumlu değil... Bulacağız bakalım çözümü. 17/02/2011, 00:26
alpeki99
Benim anlamadığım sayın ayşavkı Ribbon'u mu gizlemek istiyor yoksa Access penceresinimi? Keşke dosyasını eklemiş olsaydı.
17/02/2011, 00:58
mehmetdemiral
Sanırım birebir 2003'deki gibi bir gizleme isteniyor. Yani sadece formun kaldığı bir gizleme isteniyor. Bu mümkün müdür bilemiyorum. Çünkü ben 2010'da yukardaki metodda hata aldım. Özellikle
bölümünde sanki bir tablo adı girmem isteniyor gibi geldi. Ama msysObjects ibaresi de databasedeki sistem nesnelerini kastediyor gibi. Sakin kafayla bakmak lazım.
strTableName = Dlookup ("Name", "mSysObjects", "[Type] = 1 AND [Flags] = 0")
bölümünde sanki bir tablo adı girmem isteniyor gibi geldi. Ama msysObjects ibaresi de databasedeki sistem nesnelerini kastediyor gibi. Sakin kafayla bakmak lazım.