Tôi đang cố gắng thêm một số trợ năng cho trình đọc màn hình vào ứng dụng Flash và đang chạy lên chống lại điểm dính. Thứ tự tabbing qua các phần tử được thiết lập bởi thuộc tính tabIndex của các phần tử đó. Khó khăn là, danh sách tab được xây dựng từ những thứ này có vẻ là vĩnh viễn, nhưng nội dung của ứng dụng là động (được xây dựng từ xml, chứa các cửa sổ bật lên và hộp thoại). Có cách nào để làm mới/xây dựng lại danh sách tab không? Tôi sẵn sàng để đi đến độ dài cực đoan, và thử một số hack điên để thực hiện công việc này, vì vậy bất kỳ lời đề nghị là tốt.Thay đổi thứ tự tab Flash
6
A
Trả lời
4
bạn thiết lập chỉnh sửa các yếu tố tabIndex đánh giá cao bất cứ lúc nào bạn muốn
như thiết lập chúng để được như vậy để childIndex
for (var i:int=0;i<container.numChildren;++i) {
container.getChildAt(i).tabIndex = i; //=i or anything you want
}
Các công trình sau đây đối với tôi
iButton1.tabIndex = 1;
iButton2.tabIndex = 2;
iButton3.tabIndex = 3;
iButton1.tabEnabled = true;
iButton2.tabEnabled = true;
iButton3.tabEnabled = true;
function fnClick (pME:MouseEvent):void {
iButton1.tabIndex = 3;
iButton2.tabIndex = 2;
iButton3.tabIndex = 1;
}
iButton3.addEventListener(MouseEvent.CLICK, fnClick);
bạn có thể tải xuống mẫu fla tại đây http://matrixoft.infunity.com/agents/calvin/flash/tab.rar
nhấp vào nút thứ ba và nó sẽ thay đổi thứ tự tab. Bạn có thể cần phải "Control-> Disable shortcuts shortcuts" khi bạn ctrl-enter để kiểm tra fla
2
Tôi đang biên dịch bằng Flash Player 11.4 Toggling thuộc tính tabEnabled của TextField là tốt, nhưng tôi thấy rằng nó không hoạt động cho SimpleButtons (chúng không được kích hoạt lại khi thiết lập tabEnabled trở lại thành true). Cho rằng tôi đang sử dụng này:
private function setPanelOneTabIndices()
{
aButton1.tabIndex = 1;
aButton2.tabIndex = 2;
aButton3.tabIndex = 3;
bButton1.tabIndex = 0;
bButton2.tabIndex = 0;
bButton3.tabIndex = 0;
}
private function setPanelTwoTabIndices()
{
aButton1.tabIndex = 0;
aButton2.tabIndex = 0;
aButton3.tabIndex = 0;
bButton1.tabIndex = 1;
bButton2.tabIndex = 2;
bButton3.tabIndex = 3;
}
sửa câu trả lời để cung cấp một mẫu – Unreality
mẫu của bạn khiến tôi nhận ra rằng tôi đã không thực sự thay đổi TextArea tabIndex, nhưng TextField bên trong vùng văn bản. Tôi cảm thấy câm, nhưng bạn đã làm tốt, nhờ^_^ – Zoe
tất cả chúng ta phải đối mặt với lỗi câm tương tự khi mã hóa flash :) hiếm khi không có lỗi trong một lần – Unreality