Soru - Cevap Bölümü
/ Kategori: Programlama
11/05/2008 - 18:53:46 cevap (9) Okunma : 864 Bu yazıyı 2 kişi tuttu.
Textekileri otomatik renklendirme
arkadaşlar flashta herhangi bir texte yazılan kodları action panelindeki gibi otomatik olarak renklendirebilir miyiz?
Cevaplar
( Faydalı Cevapları Göster )
anlattığından anladığım kadarıyla, texteki yazıları manual renklendiriyor.yani istediğim kelimeyi belirleyip ilgili kodla otomatik renklendiriyorum
ama benim demek istediğim texteki yazılar sanki action panelinde yazılmış gibi otomatik olarak action script kodlarını ilgili renkle değiştirecek
örneğin textte ;
if(isim=="ali"){
gotoAndPlay(2);
}
kodu var ve bu textte otomatik olarak action kodlamasına göre renk değiştirecek.
yani, if mavi olacak "ali" yeşil olacak gotoAndPlay mavi olacak diğerleri olduğu gibi siyah kalacak.
Bunların hepsini otomatik yaptıran bir yol var mıdır?
anlatmaya çalıştığım oydu zaten, bahsettiğim fonksiyon onChanced miş, mesela:
yazi_txt. = function() {
duzenle();
}
gibi…
benim anlatmaya çalıştığım o değil işte :)
hepsini otomatik yapacak .ama öyle birşey yok sanırım..
Yapılabilir. Ercüment’in dediği gibi ile yapılabilir. Elinde değişecek kelimler ve bunların renk kodları olduğu sürece, basit bir for veya interval döngüsüyle çözülebilir.
Ayrıca AS3 ile gelen replaceText özelliği ile çok daha kısa sürer :)
tamam ercument in dediği gibi yapılabilir ama benim istediğim o değil gazing :) ve aradım bayağı bulamadım galiba yok öyle birşey…
ben hiç kelimeleri tek tek yazmadan kendisi algılayıp otomatik olarak renklendirecek..belki component falan vardır.
Merhaba,
Buraya bir göz atmanızı tavsiye ederim. Detaylı incelemedim ama istediğiniz böyle bir şey olmalı. Sanırım ücretsiz üye olarak kaynak dosyaları da indirebiliyorsunuz. Kolay gelsin..
evet istediğim tam olarak bu..ama daha önce de bunu denemiştim çalıştıramamıştım..şimdi tekrar deneyeyim sağol
Şu anda tam olarak bitmemiş olsa da renklendirme kodum şu şekilde gidiyor: ActionScript(AS3):
var styleReq:URLRequest = new URLRequest("color.xml");
var styleLoader:URLLoader = new URLLoader(styleReq);
var styleXml:XML;
styleLoader.addEventListener(Event.COMPLETE,attachStyle);
function attachStyle(e:Event)
{
styleXml = new XML(e.target.data);
colorText(fileTxt);
}
fileTxt.addEventListener(Event.CHANGE,handleTxtChange);
function handleTxtChange(e:Event)
{
//colorText(fileTxt);
}
function colorText(obj)
{
var plainTxt:String = obj.text;
var htmlTxt:String = obj.htmlText;;
//Replace Var
var colors:Object = styleXml.child("clr");
var strReg:RegExp = /".*?"/gm
//var comReg:RegExp = /
for(var clrKey:* in colors){
var regs:Object = colors[clrKey].child("reg");
for (var regKey:* in regs) {
var reg:RegExp = new RegExp(regs[regKey],"g");
var newText:String = plainTxt.replace(reg,"<font color='"+colors[clrKey].attribute("color")+"'>"+regs[regKey]+"</font><FONT COLOR='#000000'>");
newText = newText.replace(strReg,"<font color='#009900'>"+strReg.exec(plainTxt)+"</font><FONT COLOR='#000000'>");
obj.htmlText = newText
}
}
}
XML:
<root>
<clr color='#0000FF'>
<reg>var</reg>
</clr>
</root>
MMIstanbul Adobe UG
ColdFusion, Flex, AIR, Flash, PDF, Dreamweaver, Fireworks, Photoshop, Illustrator, INdesign, Premiere, Soundbooth, Lightroom, InCopy, JRun, LiveCycle, Acrobat, AfteEffects, Resmi Adobe Kullanıcı Grubu.
Etkinlikler
Konferans
2. Ulusal Yazılım Mimarisi Konferansı - UYMK'08
2. Ulusal Yazılım Mimarisi Konferansı - UYMK'08
2.Ulusal Yazılım Mimarisi Konferansı (UYMK’08), 11 – 12 Eylül 2008 tarihlerinde Ege Üniversitesi Bilgisayar Mühendisliği Bölümü ev sah...
Kategori:
Konferans
Kimler Burada? 
Son 1 dakika içinde MMIstanbul' da 272 (7 kayıtlı, 265 ziyaretçi) kullanıcı varmış. Login durumda olanlar aşağıda:
MMIstanbul Blog'undan
500 Hatası Hakkında!
merhaba arkadaşlar, bir önceki yazıda bahsettiğimiz üzere sunucunun ram ihtiyacını yavaş yavaş gidermeye başladık. An itibariyle 2 Giga d ...
Reklam, MMIstanbul ve Yeni Projeler (Durumumuz Bu Tarzında)
Ne Nedir Kampanyası Başlıyor!
Çok Merak Edenler için; MMIstanbul Geliştirme Ekibi ve Çalışma Ortamımız
MMIstanbul Online Seminerlerine Nasıl Katılabilirim?



tabi, asde textChange gibi bir fonksiyon vardı, text içerisinde herhangi bir harf girdisi ya da değişiklik olduğunda yazdığın fonksiyonu çalıştırıyordu.
bununla bir dinleyici yapabilirsin, sonra da, bir fonksiyon yazacaksın, işte atıyorum ali ata bak yazıldığında aliyi mavi bakı kırmızı istiyoruz.
çeşitli string fonksiyonları var, hatırladığım substr var mesela, bunun gibi fonksiyonlarla da, yazı içerisinde istediğimiz kelimeyi bulup, html renk tagları ile renklendirecez.
mantığı anladıysan sen yaparsın, anlamadıysan, küçük bi örnek yapabilirim.