|
ComboBox bileşeni, kullanıcının açılır bir listeden tek bir seçim yapmasına olanak tanır. ComboBox statik veya düzenlenebilir olabilir. Düzenlenebilir bir ComboBox, kullanıcının listenin en üst kısmındaki metin alanına doğrudan metin girmesine olanak sağlar. Açılır liste belgenin alt kısmına değerse, aşağı yerine yukarı doğru açılır. ComboBox üç alt bileşenden oluşur: BaseButton, TextInput ve List bileşenleri.
Düzenlenebilir bir ComboBox öğesinde metin kutusu değil yalnızca düğme vuruş alanıdır. Statik bir ComboBox öğesinde düğme ve metin kutusu vuruş alanını oluşturur. Vuruş alanı, açılır listeyi açarak veya kapatarak yanıt verir.
Kullanıcı fare veya klavye ile listede bir seçim yaptığında, seçimin etiketi ComboBox öğesinin üst kısmındaki metin alanına kopyalanır.
ComboBox bileşeniyle kullanıcı etkileşimi
ComboBox bileşenini, herhangi bir formda veya listeden tek bir seçim yapılmasını gerektiren uygulamada kullanabilirsiniz. Örneğin, bir müşteri adresi formunda şehirlerin açılır bir listesini sağlayabilirsiniz. Daha karmaşık senaryolar için düzenlenebilir bir ComboBox kullanabilirsiniz. Örneğin, sürüş talimatları sağlayan bir uygulamada, kullanıcının başlangıç ve hedef adreslerini girmesine olanak sağlamak için düzenlenebilir bir ComboBox kullanabilirsiniz. Açılır listede önceden girilmiş adresler bulunur.
ComboBox düzenlenebilir durumdaysa, başka bir deyişle
editable
özelliği
true
değerindeyse, şu tuşlar odağı metin girdi kutusundan kaldırır ve önceki değeri bırakır. Tek istisna, kullanıcı metni girdiğinde ilk olarak yeni değeri uygulayan Enter tuşudur.
|
Anahtar
|
Açıklama
|
|
Üst Karakter + Sekme
|
Odağı bir önceki öğeye taşır. Yeni bir öğe seçilirse,
change
olayı gönderilir.
|
|
Sekme
|
Odağı bir sonraki öğeye taşır. Yeni bir öğe seçilirse,
change
olayı gönderilir.
|
|
Aşağı Ok
|
Seçimi bir öğe aşağı taşır.
|
|
End
|
Seçimi listenin en alt kısmına taşır.
|
|
Escape
|
Açılır listeyi kapatır ve odağı ComboBox öğesine geri getirir.
|
|
Enter
|
Açılır listeyi kapatır ve odağı ComboBox öğesine geri getirir. ComboBox düzenlenebilir durumda olduğunda ve kullanıcı metin girdiğinde, Enter öğesi, değeri girilen metne ayarlar.
|
|
Home
|
Seçimi listenin en üst kısmına taşır.
|
|
Sayfa Yukarı
|
Seçimi bir sayfa yukarı taşır.
|
|
Sayfa Aşağı
|
Seçimi bir sayfa aşağı taşır.
|
Bir uygulamaya ComboBox bileşenini eklediğinizde, aşağıdaki ActionScript kodu satırlarını ekleyerek bu bileşeni bir ekran okuyucusu için erişilebilir duruma getirebilirsiniz:
import fl.accessibility.ComboBoxAccImpl;
ComboBoxAccImpl.enableAccessibility();
Bileşenin kaç tane örneğine sahip olduğunuza bakılmaksızın, bir bileşenin erişilebilirliğini yalnızca bir defa etkinleştirirsiniz.
ComboBox bileşeni parametreleri
Her ComboBox örneği için Özellik denetçisinde veya Bileşen denetçisinde şu parametreleri ayarlayabilirsiniz:
dataProvider
,
editable
,
prompt
ve
rowCount
. Bu parametrelerin her biri, aynı adda, karşılık gelen ActionScript özelliğine sahiptir. Bu parametrelerin olası değerleriyle ilgili bilgi için,
Adobe® Flash® Professional CS5 için ActionScript® 3.0 Başvurusu
bölümündeki ComboBox sınıfına bakın. dataProvider parametresini kullanma hakkında bilgi almak için, bkz.
dataProvider parametresini kullanma
.
ComboBox bileşeniyle uygulama oluşturma
Aşağıdaki prosedür, geliştirme sırasında bir uygulamaya nasıl ComboBox bileşeni ekleneceğini açıklamaktadır. ComboBox öğesi düzenlenebilir durumdadır ve metin alanına
Add
yazarsanız, örnek açılır listeye bir öğe ekler.
-
Yeni bir Flash (ActionScript 3.0) belgesi oluşturun.
-
Bir ComboBox bileşenini Sahne Alanı'na sürükleyin ve bu bileşene
aCb
örnek adını verin. Parametreler sekmesinde
editable
parametresini
true
değerine ayarlayın
.
-
Eylemler panelini açın, ana Zaman Çizelgesi'nde Kare 1'i seçin ve şu kodu girin:
import fl.data.DataProvider;
import fl.events.ComponentEvent;
var items:Array = [
{label:"screen1", data:"screenData1"},
{label:"screen2", data:"screenData2"},
{label:"screen3", data:"screenData3"},
{label:"screen4", data:"screenData4"},
{label:"screen5", data:"screenData5"},
];
aCb.dataProvider = new DataProvider(items);
aCb.addEventListener(ComponentEvent.ENTER, onAddItem);
function onAddItem(event:ComponentEvent):void {
var newRow:int = 0;
if (event.target.text == "Add") {
newRow = event.target.length + 1;
event.target.addItemAt({label:"screen" + newRow, data:"screenData" + newRow},
event.target.length);
}
}
-
Kontrol Et > Filmi Test Et'i seçin.
ActionScript kullanarak ComboBox oluşturma
Aşağıdaki örnek, ActionScript ile bir ComboBox öğesi oluşturur ve bu öğeyi San Francisco, California bölgesindeki üniversitelerin listesiyle doldurur. ComboBox öğesinin
width
özelliğini istem metninin genişliğini alacak şekilde ayarlar ve
dropdownWidth
özelliğini en uzun üniversite adını alacak şekilde daha geniş bir değere ayarlar.
Bu örnek, okul adlarını saklamak için
label
özelliğini ve her bir okulun web sitesini saklamak için
data
özelliğini kullanarak Array örneğinde üniversitelerin listesini oluşturur.
dataProvider
özelliğini ayarlayarak Array öğesini ComboBox öğesine atar.
Kullanıcı listeden bir üniversite seçtiğinde, bir Event öğesini tetikler.
CHANGE
olayı ve bir URL'ye
data
özelliğini yükleyen
changeHandler()
işlevi çağrısı, okulun web sitesine erişme isteğinde bulunur.
Liste kapandığında istemi yeniden görüntülemek için son satırın, ComboBox örneğinin
selectedIndex
özelliğini -1 değerine ayarladığına dikkat edin. Aksi takdirde, seçilmiş olan okulun adı istemin yerine geçer.
-
Yeni bir Flash (ActionScript 3.0) belgesi oluşturun.
-
ComboBox bileşenini Bileşenler panelinden Kütüphane paneline sürükleyin.
-
Eylemler panelini açın, ana Zaman Çizelgesi'nde Kare 1'i seçin ve şu ActionScript kodunu girin:
import fl.controls.ComboBox;
import fl.data.DataProvider;
import flash.net.navigateToURL;
var sfUniversities:Array = new Array(
{label:"University of California, Berkeley",
data:"http://www.berkeley.edu/"},
{label:"University of San Francisco",
data:"http://www.usfca.edu/"},
{label:"San Francisco State University",
data:"http://www.sfsu.edu/"},
{label:"California State University, East Bay",
data:"http://www.csuhayward.edu/"},
{label:"Stanford University", data:"http://www.stanford.edu/"},
{label:"University of Santa Clara", data:"http://www.scu.edu/"},
{label:"San Jose State University", data:"http://www.sjsu.edu/"}
);
var aCb:ComboBox = new ComboBox();
aCb.dropdownWidth = 210;
aCb.width = 200;
aCb.move(150, 50);
aCb.prompt = "San Francisco Area Universities";
aCb.dataProvider = new DataProvider(sfUniversities);
aCb.addEventListener(Event.CHANGE, changeHandler);
addChild(aCb);
function changeHandler(event:Event):void {
var request:URLRequest = new URLRequest();
request.url = ComboBox(event.target).selectedItem.data;
navigateToURL(request);
aCb.selectedIndex = -1;
}
-
Kontrol Et > Filmi Test Et'i seçin.
Bu örneği Flash geliştirme ortamında uygulayabilir ve çalıştırabilirsiniz ancak ComboBox öğesindeki öğeleri tıklatarak üniversite web sitelerine erişmeyi denerseniz, uyarı mesajları alırsınız. Internet'te tam işlevsel ComboBox öğesine erişmek için şu konuma erişin:
http://www.helpexamples.com/peter/bayAreaColleges/bayAreaColleges.html
|
|
|