hoSSohbeT.com  Sohbet  forumlari

Anasayfa Bugünki Mesajlar Forumları Okundu Kabul Et
Geri git   hoSSohbeT.com Sohbet forumlari > Bilgisayar ve İnternet Dünyası > Bilgisayar - İnternet > Bilgisayar Dünyası > Programlama
Kayıt ol Yardım Sohbet Gazete oku Diyetsaglik Üye Listesi Ajanda Arama Bugünki Mesajlar Forumları Okundu Kabul Et

Programlama Delphi , C , C++ , Qbasic , .NET Vb.Konular Hakkında Bilgi Alışverişi Yapabileceğiniz Bölüm



Cevapla
 
LinkBack Seçenekler Stil
Alt 03-09-08, 23:02   #1
Dokunma Yanarsın
 
aLayıNaiSyaN - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: 04-02-08
Nerden: . . .
Mesajlar: 1,981
Tecrübe Puanı: 496 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000 aLayıNaiSyaN 1000
Visual Basic'te menü hazırlamak, popup menü hazırlamak

Menü Oluşturma

VE

POP-UP Menü Hazırlama






Menü Oluşturma


Elbette menüler de profesyonel bir programın incisi gibidir. Biz de bunun farkında olduğumuzdan sizlerin bunu öğrenmesini istedik.

Bir formun boş bir alanına sağ tıklandığında açılan menüde mutlaka bir 'Menu Editor' seçeneğine rastlamışsınızdır. Şimdi sizlere bu seçeneği tıklayarak neler yapabileceğiniz konusunda biraz ipuçları vereceğim.

Açılan 'Menu Editor' penceresinde 'Caption' yazan bölüme menüde görünecek yazı yazılacaktır. Altındaki 'Name' bölümü ise proje içindeki nesne ismidir. Buraya girilen metin Türkçe karakter taşımazsa iyi olur. Aksi takdirde ileride sorunlarla karşılaşabilirsiniz. Buradan sonra yapılacak tek şey OK(Tamam) tuşuna basmak olacak. İşte sizinde bir menünüz oldu. Yalnız bu sadece bir kulp. Yani nasıl bir fincanın kulu bu vardır. Aynen öyle. Kulp bir fincana gerekli fakat tek kulp bizi asla kahveye ulaştırmaz. İşte bu noktada pencerenin tam ortasında sağa, sola, aşağı, yukarı birtakım düğmeler göreceksiniz. Bu düğmelerden sağ oklu olan düğmeye bir defa tıkladığınızda biraz önce eklediğiniz menü başlığının altında bir nokta grubu(4 Nokta) belirecek. Şimdi biraz önce yaptığımız işlemleri tekrar yaparak asıl menüyü oluşturmaya başlayabilirsiniz. Böylelikle ilk olarak eklediğiniz menüye tıklandığı zaman alta doğru açılan bir menü ile karşılaşabilirsiniz. Ekleyeceğiniz menüler sizin programınızın özelliklerine göre değişebilir.



Pop-Up Menüler...

Bildiğiniz gibi Pop-up menüler, WINDOWS 3,1 ile gelen ve bazı programlarda sağ fare tuşuna basıldığında programla ilgili birtakım olayları gerçekleştirebilmenize yarayan menülerdir. Bu menüler WINDOWS 95 kullananların ise artık eli ayağı durumundalar. Visual Basic ile bu menüleri yaratmak çok kolay.
Menü editörünü açın ve şekildeki gibi özellikler taşıyan ve ismi "Pano" olan bir menü yaratın. Menünüzü yarattıktan sonra editörden çıkmadan sadece "pano" isimli kısmı "görünmez" yapın. Editörden çıktığınızda yarattığınız menünün görülmediğini fark edeceksiniz. Form üzerindeki diğer kontrolleri de yarattıktan sonra programınızı çalıştırın ve text kutusunun üstüne gidip "Sağ" fare tuşuna tıklayın. Karşınıza menü editörüyle yarattığınız menü bir pop-up menü olarak çıkacaktır. Programınız çalışırken menülerin ayarlarıyla oynayabildiğinizden pop-up menüyü, normal bir menü haline ikinci seçeneği seçerek dönüştürebilirsiniz.



Private Sub Form_Load()

Pano.Visible = False
Option1.Value = True
End Sub

Private Sub Option1_Click()
pano.Visible = False
End Sub

Private Sub Option2_Click()
pano.Visible = True
End Sub


Private Sub tarih_Click()
Text1.Text = Text1.Text & Now
End Sub


Private Sub Text1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If pano.Visible = True Then GoTo atla
If Button = 2 Then
PopupMenu pano
End If
atla:
End Sub


Formlarımıza menü eklerken ve menüleri düzenlerken yanda görülen pencereden faydalanacağız. Oluşturmak istediğimiz menünün başlığını Caption adlı bölüme gireriz. Name kısmına ise bu menü için bir ad yazarız. İlk menümüzü belirledikten sonra Next düğmesine basarız. Visual Basic Caption ve Name kutucuklarını bir sonraki menüyü ilave edebilmemiz için boşaltır. Yeni menü öğeleri yaratıldıkça, aşağıda bulunan liste kutusunda listelenirler. Alt menüleri oluşturmak için ise Next düğmesinin sol tarafında bulunan ok düğmelerini kullanırız. Var olan bir menünün silinmesi için liste kutusundan menüyü seçer ve Delete butonuna tıklarız. Yeni menüler ilave ederken ise Insert butonundan faydalanırız.
Microsoft Word’de Düzen menüsüne tıkladığımız zaman Kopyala için Ctrl + C, Kes için Ctrl + X, Yapıştır için Ctrl + V kısayol tuşları görülür. Visual Basic’de de bu tip menüler oluşturmak istediğimizde Menü Editor penceresindeki liste kutusundan bir menü seçtikten sonra Shotcut bölümünü kullanabiliriz.
Popup Menüler
Windows’ta sağ düğmeye bastığımızda çıkan menülere popup menüler adını veririz. Visual Basic’de hazırladığımız projelerde de popup menüler oluşturabiliriz. Popup menü tasarımı normal menü tasarımı gibi gerçekleşir. Sadece bu menünün visible özelliğine false değeri verilir ve açılması istenilen yerde PopupMenu yöntemi kullanılır.
PopupMenu MenüAdı,Flags, X, Y, Bold
MenüAdı; Menü Editörde tasarlanan menünün adı
Flags; X parametresinin nasıl kullanılacağını ve açılan menüde farenin hangi tuşunun click olayını gerçekleştireceğini belirler.
Flags parametresi aşağıdaki gibi kullanılır;
Flags=KoorX + Fare
KoorX aşağıdaki değerleri alır
0: Menü X kordinatının solunda yer alır
4: Menü X kordinatını ortalayacak
8: Menü X kordinatının sağında yer alır
Fare aşağıdaki değerleri alır
0: Sol fare tuşu ile menüden eleman seçilebilecek
2: Sağ fare tuşu ile menüden eleman seçilebilecek
Bold; Bu parametre ile menüdeki elemanlardan biri kalın yapılabilir
Private Sub Text1_MouseDown(Button As Integer,Shift As Integer, X As Single, Y As Single)
'Sağ fare düğmesine basıldı ise
If Button = 2 Then
PopupMenu mnuDuzen, 4, Text1.Left + X, Text1.Top + Y
End If
End Sub





VİSUALBASİC İLE YAPTIGINIZ
MENULERE RESİM EKLEMEK

---- Aşağıdaki Kod Modul içine yazılacak ----
Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Declare Function SetMenuItemBitmaps Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long
Public Const MF_BITMAP = &H4&
Type MENUITEMINFO
cbSize As Long
fMask As Long
fType As Long
fState As Long
wID As Long
hSubMenu As Long
hbmpChecked As Long
hbmpUnchecked As Long
dwItemData As Long
dwTypeData As String
cch As Long
End Type
Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Declare Function GetMenuItemInfo Lib "user32" Alias "GetMenuItemInfoA" (ByVal hMenu As Long, ByVal un As Long, ByVal b As Boolean, _
lpMenuItemInfo As MENUITEMINFO) As Boolean
Public Const MIIM_ID = &H2
Public Const MIIM_TYPE = &H10
Public Const MFT_STRING = &H0
--- Modul içine yazılcak kısım bitti ---
Menü editörünü kullanarak bir menü oluşturun. içinde 3 tane şeçenek olsun. isimleri Dosya, index numaraları 0,1,2 olsun. Bunu yaptıktan sonra. Form üzerine L isminde bir ListBox, D isminde CommanDialog(filter özelligi = *.bmp|*.bmp), MenuResim isminde bir PictureBox (index Numarası=0,Autosize=true,visible=false) ,C adında bir Commandbutton ekleyin ve aşagıdaki kodu form üzerine yapıştırın.

Private Sub C_Click()
D.ShowOpen
Ekle L.ListIndex, D.FileName
End Sub
Private Sub Form_Load()
For i = 0 To dosya.UBound
L.AddItem dosya(i).Caption
Next i
End Sub
Public Sub Ekle(X As Integer, ResimAdi As String)
On Error Resume Next
Load MenuResim(X)
MenuResim(X).Picture = LoadPicture(ResimAdi)
hMenu& = GetMenu(Form1.hwnd)
hSubMenu& = GetSubMenu(hMenu&, 0)
hid& = GetMenuItemID(hSubMenu&, X)
SetMenuItemBitmaps hMenu&, hid&, MF_BITMAP, MenuResim(X).Picture, MenuResim(X).Picture
End Sub
--- Form içine yazılcak Kısım bitti ---
Program çalışırken Listboxtan hangi menuye resim eklemek isterseniz onu seçin ve C butonunu tıklayın. Resim belirleyin .Artık menunuzde resim var.
Popup Menü yapmak...
Popup menüler programlamada çok kullanılan araçlardan birisidir.

Private Sub Form_Click()
PopupMenu mnupopup
End Sub

Böylece forma her tıkladığınızda menünüz gözükmüş olacak.Küçük ama pratik bir yöntem değil mi?
İsterseniz menu editörden menünüzü görünmez yapabilirsiniz
__________________
aLL Hope iS Gone

aLayıNaiSyaN isimli Üye şimdilik offline konumundadır  
Digg this Post!Bookmark Post in Technorati
Alıntı ile Cevapla
Cevapla

  • Submit Thread to Digg Digg
  • Submit Thread to del.icio.us del.icio.us
  • Submit Thread to StumbleUpon StumbleUpon
  • Submit Thread to Google Google
  • Bookmarks

    Seçenekler
    Stil

    Yetkileriniz
    You may not post new threads
    You may not post replies
    You may not post attachments
    You may not edit your posts

    BB code is Açık
    Smileler Açık
    [IMG] Kodları Açık
    HTML-KodlarıKapalı
    Trackbacks are Açık
    Pingbacks are Açık
    Refbacks are Açık



    Bütün Zaman Ayarları WEZ olarak düzenlenmiştir. Şu Anki Saat: 18:01 .


    Powered by vBulletin Version 3.8.7
    Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
    Search Engine Friendly URLs by vBSEO 3.5.0 RC2
    Sohbet ve Sohbet odalari sitesi

    Sohbet Chat Forum Oyunlar1