ManiacMyko Forum | Sanal Alemin Private Forumu
Would you like to react to this message? Create an account in a few clicks or log in to continue.


...:::ManiacMyKO PWP'NiN TARTIŞILMAZ ADRESİ:::...
 
AnasayfaLatest imagesAramaKayıt OlGiriş yap

 

 Standart VB De Kontrolleri Ayırmak

Aşağa gitmek 
YazarMesaj
€mRe
Bilgili Üye
Bilgili Üye
€mRe


Erkek
Mesaj Sayısı : 57
Yaş : 34
Nerden : Mersin-Merkez
Lakap : 3MR3
Hali : Standart  VB De Kontrolleri Ayırmak Olgun10
' : Standart  VB De Kontrolleri Ayırmak D1e2ee3fede4072d5e25570324a07802
Şehir : İçel
Rep Puanı : Standart  VB De Kontrolleri Ayırmak Rank%206
Başarı Sistemi : 1
Kayıt tarihi : 20/02/09

Cüzdan
Altın Altın: 0
Para Para: 0

Standart  VB De Kontrolleri Ayırmak Empty
MesajKonu: Standart VB De Kontrolleri Ayırmak   Standart  VB De Kontrolleri Ayırmak EmptyC.tesi Şub. 21 2009, 19:23

VB'de Kontrolleri Ayırmak Kontrolleri Ayırmak GÜNLÜK hayatınızda sık
sık karşınıza çıkan, belki de pek dikkat etmediğiniz bir arabirim püf
noktası verelim. Windows altında çalışırken Windows Gezgini'ni açtınız
diyelim. Karşınıza ince bir çizgiyle ayrılmış iki ayrı pencere gelir.
Ortadaki çizgiyi sağa veya sola ötelediğinizde pencereler buna göre
yeniden durum alarak ya genişler ya da daralır. Aynı durum formun
büyüklüğüyle oynandığında da karşınıza çıkar ve formun yeni büyüklüğüne
göre kontroller yeni yerlerini alır. Yukarıda anlattığımız iki işlemi
programlarınızda uygulamak pek de zor değildir. Form üzerine bir Liste
bir de Text kutusu oluşturun. Liste kutusunun ismini ' listsol' metin
kutusunun ismini textsag olarak belirleyin. Form üzerinde bu iki
kontrol dışında bir de resim kutusu oluşturarak ismini ' ayirac' olarak
atayın. Programı çalıştırıp ortadaki ayıracı sağa sola kaydırın, formu
küçültüp büyültün, tıpkı Windows Gezgini gibi şekil alacaktır.
' Aşağıdaki kodlar boş bir BAS modülünün içinde
' General-Declarations bölümüne yazılacak.

Option Explicit
Private Const SPLT_WDTH As Integer = 5
Private currSplitPosX As Long
Dim CTRL_OFFSET As Integer
Dim SPLT_COLOUR As Long

' Aşağıdaki kodlar formun ilgili
' yerlerine yerleştirilecek.

Private Sub Form_Load()
CTRL_OFFSET = 5
SPLT_COLOUR = &H808080
currSplitPosX = &H7FFFFFFF
listsol.AddItem ' Listedeki 1. öğe'
listsol.AddItem ' Listedeki 2. öğe'
textsag.Text = ' Örnek bir metin'
End Sub
Private Sub Form_Resize()
Dim x1 As Integer
Dim x2 As Integer
Dim height1 As Integer
Dim width1 As Integer
Dim width2 As Integer
On Error Resume Next
height1 = ScaleHeight - (CTRL_OFFSET * 2)
width1 = listsol.Width
x1 = CTRL_OFFSET
x2 = x1 + width1 + SPLT_WDTH - 1
width2 = ScaleWidth - x2 - CTRL_OFFSET
listsol.Move x1 - 1, CTRL_OFFSET, width1, height1
textsag.Move x2, CTRL_OFFSET, width2 + 1, height1
ayirac.Move x1 + listsol.Width - 1,
CTRL_OFFSET, SPLT_WDTH, height1
End Sub

Private Sub ayirac_MouseDown(Button As
Integer, Shift As Integer, x As Single, y As Single)

If Button = vbLeftButton Then
ayirac.BackColor = SPLT_COLOUR
currSplitPosX = CLng(x)
Else

If currSplitPosX <> &H7FFFFFFF Then ayirac_MouseUp
Button, Shift, x, y

currSplitPosX = &H7FFFFFFF
End If
End Sub

Private Sub ayirac_MouseMove(Button As
Integer, Shift As Integer, x As Single, y As Single)

If currSplitPosX& <> &H7FFFFFFF Then
If CLng(x) <> currSplitPosX Then
ayirac.Move ayirac.Left + x, CTRL_OFFSET,
SPLT_WDTH, ScaleHeight - (CTRL_OFFSET * 2)
currSplitPosX = CLng(x)
End If
End If
End Sub

Private Sub ayirac_MouseUp(Button As Integer,
Shift As Integer, x As Single, y As Single)

If currSplitPosX <> &H7FFFFFFF Then
If CLng(x) <> currSplitPosX Then
ayirac.Move ayirac.Left + x, CTRL_OFFSET,
SPLT_WDTH, ScaleHeight - (CTRL_OFFSET * 2)

End If
currSplitPosX = &H7FFFFFFF
ayirac.BackColor = &H8000000F
If ayirac.Left > 60 And ayirac.Left < (ScaleWidth - 60) Then
listsol.Width = ayirac.Left - listsol.Left
ElseIf ayirac.Left < 60 Then
listsol.Width = 60
Else: listsol.Width = ScaleWidth - 60
End If
Form_Resize
End If
End Sub
Sayfa başına dön Aşağa gitmek
https://mersin.canadian-forum.com/
 
Standart VB De Kontrolleri Ayırmak
Sayfa başına dön 
1 sayfadaki 1 sayfası

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
ManiacMyko Forum | Sanal Alemin Private Forumu :: Programlar & Programlama :: Programlama-
Buraya geçin: