0
플래시 액션 스크립트 3에서 화이트 보드를 만들어야합니다. 흰색 상자에 텍스트 상자 속성을 만들 수 없습니다. swf를 열면 사용자가 원하는 텍스트 상자 필드를 만들 수있는 whch로 텍스트 상자 속성이 필요합니다. 제발 도와주세요 ..AS3 - 화이트 보드에 텍스트 필드 만들기
플래시 액션 스크립트 3에서 화이트 보드를 만들어야합니다. 흰색 상자에 텍스트 상자 속성을 만들 수 없습니다. swf를 열면 사용자가 원하는 텍스트 상자 필드를 만들 수있는 whch로 텍스트 상자 속성이 필요합니다. 제발 도와주세요 ..AS3 - 화이트 보드에 텍스트 필드 만들기
이런 식으로 뭔가?
Whiteboard.as
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFieldType;
public class Whiteboard extends Sprite
{
private var _whiteboard : Sprite;
private var _currentText : TextBox;
public function Whiteboard()
{
super();
createWhiteboard();
enableUserInput();
}
private function createWhiteboard() : void
{
// create whiteboard sprite
_whiteboard = new Sprite();
// add to displaylist
addChild(_whiteboard);
// draw graphics
with(_whiteboard.graphics)
{
lineStyle(10, 0x666666, 1);
beginFill(0xFFFFFF, 1);
drawRect(0, 0, 800, 600);
endFill();
}
}
private function enableUserInput() : void
{
_whiteboard.addEventListener(MouseEvent.CLICK, onUserInteract);
}
private function onUserInteract(event : MouseEvent) : void
{
// remove if empty
if(_currentText && _currentText.htmlText.length == 0)
{
// remove from displaylist
_whiteboard.removeChild(_currentText);
}
// add new
if(event.target == _whiteboard)
{
_currentText = new TextBox();
_currentText.x = event.stageX;
_currentText.y = event.stageY;
// add to displaylist
_whiteboard.addChild(_currentText);
}
else
{
// use clicked text
_currentText = event.target as TextBox;
}
// set selection
_currentText.setSelection(0, _currentText.htmlText.length);
// set focus
stage.focus = _currentText;
}
}
}
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFieldType;
import flash.text.TextFormat;
class TextBox extends TextField
{
function TextBox()
{
super();
background = true;
backgroundColor = 0xFF88FF;
multiline = false;
autoSize = TextFieldAutoSize.LEFT;
type = TextFieldType.INPUT;
htmlText = "";
selectable = true;
defaultTextFormat = new TextFormat("_sans", 18, 0xFFFFFF);
}
}
오랜 시간이 지난 후에 .. 내가 게시했을 때 나는 초급이었다. 이 질문. 이것은 힌트가 필요했기 때문에 이것을 받아 들였습니다. – ravi404
는 사용자가 어디를 클릭하고 텍스트 상자가 나타나게 할 수 있어야한다는 것을 의미합니까? – Marty
예. 실제로 사용자가 아이콘을 선택한 다음 어딘가에 클릭하면 텍스트 상자가 나타납니다. 아이콘 부분을 직접 사용해 볼 수 있습니다 .. – ravi404
좀 더 구체적으로 말씀해 주시겠습니까? – Eugeny89