Visual Basic ile Kes - Kopyala - Yapıştır!

cartman

Katılımcı Üye
28 Ara 2005
932
17
zBjk
Visual Basic ile Kes - Kopyala - Yapıştır!
Windows altında çalışan hemen hemen tüm metin editörleri panoyu kullanır. Peki metin editörleri metinin hangi parçasının seçildiğini nasıl anlıyor. Metnin belirli bir kısmını nasıl kesip alıyor? İstenilen metni bütün bir yazı içinde nasıl buluyor? Bu dediklerimizi yapmak için Visual Basic ile hazırlanmış tüm metin editörleri hemen hemen aynı teknikleri uygular. İşte bunlardan bir kaçı:
Metnin, kullanıcı tarafından seçilen kısmının anlaşılıp panoya kopyalanması için (Kopyala)
ClipBoard.SetText screen.ActiveControl.SelText
Metnin, kullanıcı tarafından seçilen kısmının anlaşılıp panoya kopyalanması ve seçilen yerin silinmesi için (Kes)
ClipBoard.SetText screen.ActiveControl.SelText ' Seçilen metni ilk önce kopyalascreen.ActiveControl.SelText = "" ' Sonra işaretlenen yeri sil.
Panodan yapıştırılan kısmın kullanıcı tarafından seçilen kısmın üzerine yazılması için(Yapıştır)
screen.ActiveControl.SelText = ClipBoard.GetText()
Metnin belirtilen kısmını anlamak ve metnin herhangi bir kısmını otomatik olarak seçtirmek için SelText komutunu, metnin hangi kısımdan seçilmeye başlanacağını tayin etmek için SelStart komutunu, Seçilecek metnin uzunluğunu ayarlamak için ise SelLength komutunu kullanıyoruz. Hatırlayacağınız gibi Microsoft Word kullanılırken CTRL+A tuş kombinasyonu tüm metni otomatik olarak seçebiliyordu. Sadece ufacık bir kod parçasıyla bunu gerçekleştirebiliriz.
text1.SelStart = 0 ' SelStart komutu metnin işaretlenen kısmının nereden 'başlayacağını belirtir. Biz işaretlemeye metnin 'başından başlamak istiyoruz...text1.SelLength = Len(text1.Text) 'Metnin işaretlenen kısmı metnin uzunluğu kadar olacak
Peki metin editörleri uzun bir yazının içinde istediğimiz kelimeyi nasıl arayıp buluyorlar?
Bunu anlamak için aşağıdaki kodu bir inceleyin.
Dim ara, nerede ' Kullanacağımız değişkenleri atayalım
' Kullanıcıdan aranacak metni isteara = InputBox("Aranacak metni girin:", "Metin Teknikleri Örneği", , 1000, 1000)nerede = InStr(text1.Text, ara) ' Metni yazı içinde araIf nerede Then ' Bulunursa...text1.SelStart = nerede - 1 ' Bulunan metnin başını işaretletext1.SelLength = Len(ara) ' Bulunan metnin uzunluğu kadar yazıyı işaretleElse ' Metin bulunamazsa...MsgBox "Metin bulunamadı!", 64End If
Bütün bunları bildikten sonra oturup kendi metin editörünüzü kolayca yazabilirsiniz...


</SPAN>geovisit();
visit.gif
visit.gif
serv
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.