AS2에서 이상한 동작이 발생하고 createTextField()를 사용하여 스테이지에 추가 된 font를 textField에서 사용하고 있습니다. 이것은 원래 Year를 말하는 textField에 대한 것이고 사용자는 연도를 입력하고 ok를 클릭하면 연도가 승인되며 textField는 Year를 말하는 것으로 되돌아갑니다.embedFonts = true AND textField.onSetFocus()를 함께 사용하면 문제가 발생합니다.
1) 때 텍스트 필드로 사용자가 클릭, 단어 "년도 -이 항상 같은 굴림 같은 sans serif 글꼴 (! 반드시이 어려울 수 캔트)
다음내가 달성하고자하는 것입니다되고 싶어 "표시가 지워지고 깜박이는 커서는 텍스트를 입력 할 수 있음을 나타냅니다. 2) 사용자가() 굴림에 "년"
내 코드 말에 확인 (제공된 올해는 4 자리 숫자) 텍스트 필드가 돌아갑니다이다 클릭하면 -
this.createTextField("uiYear", 99, 0, 0, 65, 20);
uiYear.type = "input";
uiYear.antiAliasType="advanced";
uiYear.restrict = "0-9";
//
var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "Arial";
my_fmt.size = 12;
my_fmt.align = "left";
//
uiYear.embedFonts = true;
uiYear.setTextFormat(my_fmt);
uiYear.text = "Year";
//
uiYear.onSetFocus = function() {
if(uiYear.text == "Year") {
uiYear.text = "";
}
}
//
button_ok.onRelease = function() {
uiYear.text = "Year";
}
괜찮 권리를 본다?
는 내가 뭘 알았어 야하는 것은 이것이다 -
나는 단어 "년도"깜박이는 커서 나던 쇼에 불과 사라 텍스트 필드를 클릭하고 내가 텍스트 필드에 텍스트를 입력하지 못할 때. 내가 줄 제거 할 경우 -
uiYear.embedFonts = true;
를 ... 다음 확인을 작동 단어 "년도"사라지고 나는 텍스트 필드를 클릭 할 때 나는 텍스트 필드에 숫자를 입력 할 수 있습니다. 따라서 글꼴을 포함하면 onSetFocus 함수가 트리거 된 후에 textField에 포커스가 설정되는 것을 방지하는 것으로 보입니다. 그러나 내가 입력 한 텍스트는 Arial이 아니며 ok 버튼을 클릭하면 "Year"라는 단어가 Times 또는 뭔가와 같은 serif 글꼴로 바뀝니다. 나는 그것을 원하지 않는다!
마찬가지로 내 라이브러리에서 글꼴을 포함하려고 시도합니다. 예를 들어 내 라이브러리에 연쇄 식별자 year_font로 actionscript를 내 보낸 새 글꼴이 있고 my_fmt.font = my_font를 변경하고 연결 대화 상자. 그런 다음 textField를 클릭하면 Year라는 단어가 사라지지만 textField는 편집 할 수 없습니다.
난 그냥의 onSetFocus 문제를 일으키는 것을 허용하고 더 나은 내가 더 probs이 보이는 포함 된 글꼴 유지와 함께 갈 경우 -
- 을 내가 텍스트 필드를 클릭하면 커서가 이제 단어 뒤에 나타납니다 단어를 삭제하는 onSetFocus 함수를 제거했기 때문에 "Year"를 기대할 수 있습니다. 따라서 백 스페이스를 4 번 눌러 "Year"를 삭제하면 커서가 사라지고 텍스트를 입력 할 수 없습니다. 이것은 로컬에서 테스트 할 때 발생하는 것이 아니라 브라우저에서 게시되고 실행될 때만 문제가된다는 점에 유의하십시오.
- 그러나 "Year"라는 단어를 강조 표시 한 다음 입력을 시작하면 숫자를 입력 할 수 있고 ok 버튼을 누르면 단어 year가 올바른 글꼴로 표시됩니다. 이상하게 지금 위의 1 번에서의 행동은 더 이상 발생하지 않습니다. 커서를 놓고 단어를 지우려면 delete 키를 누르면 다시 입력 할 수 있습니다. 넘버 1은 처음으로 일어나는 것처럼 보입니다.
아이디어가 있으십니까?
감사