OLE Metodları
Aug 10,2008 00:00 by RubeNiS
Kodun yazıldığı sistem..: Pentium II 333Mhz, 64Mb ram
İşletim Sistemi.........: MS WindowsNT 4.0, Service Pack 5
Version.................: MS Visual Basic 6.0 Enterprise

Bu örneğimizde Visual Basic'de form üzerindeki objelerin OLE metodlarını nasıl kullanacağımızı görücez. Bunu için yeni bir proje başlatın ve formun üzerine bir 'Rich Text Box' ile bir 'List Box' koyun ve aşağıdaki kodu forma yapıştırın.

'Çeşitli formatlar için kullanılacak sabitler:
'Sabit Değeri Açıklama
'vbCFText 1 Text (.txt dosyaları)
'vbCFBitmap 2 Bitmap (.bmp dosyaları)
'vbCFMetafile 3 metafile (.wmf dosyaları)
'vbCFEMetafile 14 Enhanced metafile (.emf dosyaları)
'vbCFDIB 8 Device-independent bitmap (DIB)
'vbCFPalette 9 Color palette
'vbCFFiles 15 List of files
'vbCFRTF -16639 Rich text format (.rtf dosyaları)

Private Sub Form_Load()

List1.OLEDropMode = 1
List1.OLEDragMode = 1
rt1.OLEDropMode = 1

End Sub

Private Sub List1_OLEDragDrop(Data As DataObject, _
Effect As Long, _
Button As Integer, _
Shift As Integer, _
x As Single, _
y As Single)

Dim i%
If Data.GetFormat(vbCFFiles) Then
Caption = Data.Files.Count & " objesi seçildi"
List1.Clear
For i = 1 To Data.Files.Count
List1.AddItem Data.Files(i%)
Next i
End If

'If Data.GetFormat(vbCFText) Then
' List1.AddItem "Text : " & Data.GetData(vbCFText)
'End If

End Sub



Private Sub rt1_OLEDragDrop(Data As RichTextLib.DataObject, _
Effect As Long, _
Button As Integer, _
Shift As Integer, _
x As Single, _
y As Single)

If Data.GetFormat(vbCFText) Then
rt1.LoadFile Data.GetData(vbCFText), rtfText
End If

If Data.GetFormat(vbCFFiles) Then
rt1.LoadFile Data.Files(1), rtfText 'Demo için bir dosya yükle
End If

Caption = rt1.FileName

End Sub


F5 ile programı çalıştırın ve Visual Basic'i 'minimize' edin. Form üzerinde mouse ile gezerken formun aktif duruma geçtiğini göreceksiniz. Şimdi bir .rtf dosyasını yada bir text dosyasını windows explorer'dan fare ile taşıyarak 'List Box' üzerine bırakın. Dosyanın hangi dizinde olduğu görünecektir. Şimdide 'List Box' içinde görünen item'ı gene fare ile tutarak 'Rich Text Box' bölümüne taşıyın. Böylece dosyanın içeriği görünecektir