AS3 – Adobe Air İle Sistem Panosundan Metin Okuyalım ve Yazalım

Tarih: Ocak 15th, 2009 | Yazar: | Kategori: Action Script | Etiketler: , , , , , , | 1 Yorum »

Merhaba arkadaşlar. Ne yalan söyleyeyim bugün yazı yazmayacaktım fakat kıyamadım yazayım dedim. Neyse bugün sizlerle nasıl sistem panosuna metin tabanlı olarak hükmederiz onu göreceğiz. Öncelikle sistem panosu nedir? Eğer ki birşeyi kopyalar, kesersek bu veriler sistem panosuna aktarılır ve hafızada tutulur. Gerektiği yerde tekrar işleme konur.

İşte bizde sistem panosuna hükmedeceğiz. Yani oradaki yazanları alacağız veya yeni bir veri ekleyeceğiz. Fakat işlerin daha da karışmaması için sadece metin ifadeleri ile uğraşıcaz. :) Bu yüzden bana eksik anlattın falan demeyin :) . İşte bugün de böyle bir ders geliyor…

Arkadaşlar öncelikle sistem panosuna hükmetmek için bize bir sınıf verilmiş. Fakat illa da bu sınıfları import yani dahil etmemiz gerekmiyor. O yüzden bende yazmaya üşendim ve sizlerin araştırıp hangi sınıf olduğunu öğrenmenizi istiyorum. Öncelikle örnekte bilerek Enter Frame kullandım. Bu sayede anı anına metin olarak neyin kopyalanladığı görecebileceğiz.

İlk olarak çalışmaya bir metin alanı ekleyin ve adını metin yapın sonra;

addEventListener(Event.ENTER_FRAME,kopya);
function kopya(evt:Event) {
if(Clipboard.generalClipboard.hasFormat(ClipboardFormats.TEXT_FORMAT)){
var text = Clipboard.generalClipboard.getData(ClipboardFormats.TEXT_FORMAT);
metin.text=text;
}
}

Kodunu ekleyin ve arkanıza yaslanın. İlk önce sahneye bir olay dinleyicisi ekliyoruz. Sonra bu dinleyiciyi kopya isimli bir fonksiyona bağlıyoruz. Ardından diyoruz ki sistem panosuna bak bakalım orada metin tabanlı bir veri mi saklanıyor? Eğer öyle ise bir metin değişkeni yarat ve bu veriyi ona ata diyoruz ve ardından metin isimli metin alanına bu değişkeni göstermesi için emir veriyoruz! :D

Tabi Enter Frame olduğu için sürekli olarak yeni veriyi alacaktır. Fakat veri metin türü değilse? İşte o zaman if sorgusu düşüyor ve işlem iptal ediliyor. İf sorgusu olmasaydı oynatıcı null yani anlamsız hatası verecekti…

Peki ya sistem panosuna yeni veri yazmak istersek?

Onun da bir yöntemi var! ;

var yeniyazi:String = “Yeni metin kopyası yuppi!”;
Clipboard.generalClipboard.clear();
Clipboard.generalClipboard.setData(ClipboardFormats.TEXT_FORMAT, yeniyazi, false);

Kodları ile panoya yeni bir metin yerleştirebiliriz. Öncelikle string yani metin değişkeni tanımlıyoruz. Sonra sistem panosunda herhangi bir çakışma, yüklenme olmasın diye panoyu temizliyoruz. Tüm işlemlerden sonra sistem panosuna yeni data yani veri giriyoruz. Önce text yani metin formatlı olduğunu belirtiyoruz, sonra atanması gereken metin değişkenini gösteriyoruz ve son olarak serialize yani karşı tarafın anlayacağı değişkensel olarak mı yollayayım diyor ve biz de hayır teşekkürler diyoruz.

İşte sistem panosu ile oynamak bu kadar kolay! Daha sonra tekrar görüşmek üzere…

Herkese iyi günler, iyi çalışmalar…




Benzer Yazılar;

coded by nessus

“AS3 – Adobe Air İle Sistem Panosundan Metin Okuyalım ve Yazalım” yazısında 1 Ahkam var.

  1. 1 DuMaN 16:28 on Aralık 8th, 2010 anında kesmiş:

    Selamlar Hocam..Bu Konuda Biraz Yardımcı Olbileceğinizi Düşündüm umarım yanılmamışımdır..

    Flash as3 ile mp3 player yazıyorum ( çook proje var nasıl biteceklerse :) )

    takıldığım konu ise :normal winmp aimp gibi bir mp3 ü pencere üzerine sürüklediğinde bunu çaldırabilmek..

    bana lazım olan sadece panodan gelen fiziksel adresi alabilmek zaten gerisini adres belirterek çaldırabilirim :)

    umarım açıklamam yeterlidir ve umarım cevabınız benı ve bu konuyu takıp edenleri memnun eder..şimdiden teşekkürler..


Ahkam Kesme Aparatı

  • *