flash on 2010-11-8
♥0 |
Line 120 |
Modified 2010-11-08 23:39:07 |
MIT License
archived:2017-03-20 13:50:55
ActionScript3 source code
/**
* Copyright Nowloading_ ( http://wonderfl.net/user/Nowloading_ )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/nQp1
*/
package {
import flash.text.*;
import flash.events.*;
import flash.display.MovieClip;
import flash.display.Sprite;
public class createTextField extends Sprite {
public var txtF:TextField = new TextField();
public function createTextField(ar:Array,arr:Array,ptNum:Number,inputNum:Number) {
txtF.text = " ";
txtF.x = ar[0];
txtF.y = ar[1];
txtF.width = ar[2];
txtF.height = ar[3];
txtF.border = ar[4];
txtF.borderColor = ar[5];
txtF.background = ar[6];
txtF.backgroundColor = ar[7];
txtF.type = ar[8];
txtF.multiline = ar[9];
var tfFormat = textFormat(arr);
txtF.setTextFormat(tfFormat);
addChild(txtF);
function tfListener(event) {
var tfx:Number = txtF.x;
var tfy:Number = txtF.y;
setTextCheck(txtF.text,ptNum,tfx,tfy);
}
txtF.addEventListener("mouseFocusChange", tfListener);
}
private function textFormat(arr:Array):TextFormat {
var format:TextFormat = new TextFormat();
format.font = arr[0];
format.size = arr[1];
format.color = arr[2];
format.bold = arr[3];
format.italic = arr[4];
return format;
}
function setTextCheck(str:String,n:Number,tfx,tfy) {
if (n) {
var pt:String = this["pt"+n];
var msg:String = this["msg" + n];
var pattern:RegExp = new RegExp(pt);
textCheck(pattern,str,msg,n,tfx,tfy);
}
}
var alertB:MovieClip = new MovieClip();
var aBox:Boolean;
function textCheck(pattern:RegExp,str:String,msg:String,n:Number,tfx:Number,tfy:Number) {
var str0:String = str.substr(0,1);
if ( str0 == " ") {
str = str.substr(1);
}
if (n==8) {
pattern = /^\d{2,3}-\d{1,4}-\d{4}$/;
var patternTest:Boolean = validateNumber(str,pattern);
} else if (n==9) {
pattern = /^\d{3}-\d{4}$/;
patternTest = validateNumber(str,pattern);
} else {
patternTest = pattern.test(str);
}
if (n==7) {
if (patternTest) {
patternTest = false;
} else {
patternTest = true;
}
}
if (patternTest) {
addChild(alertB);
alertB.x = tfx + 50;
alertB.y = tfy + 23;
alertB.msgBox.text = msg;
aBox = true;
txtF.text = " ";
} else if (aBox) {
removeChild(alertB);
aBox = false;
}
function removeBox(event) {
if (aBox) {
removeChild(alertB);
aBox = false;
}
}
alertB.addEventListener(MouseEvent.CLICK,removeBox);
}
private function validateNumber(str:String,pattern:RegExp):Boolean {
var result:Object = pattern.exec(str);
if (result == null) {
return true;
}
return false;
}
public function inputText():String {
var returnStr:String = txtF.text;
if (returnStr.substr(0,1)==" ") { returnStr = returnStr.substr(1); }
return returnStr;
}
//Check Pattern
var pt1:String = "[^0-9]";
var pt2:String = "[^a-zA-Z]";
var pt3:String = "[^0-9a-zA-Z]";
var pt4:String = "[^ァ-ン]";
var pt5:String = "[^ぁ-ん]";
var pt6:String = "[ -~]";
var pt7:String = "([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}";
var pt8:String = "[^\d{2,3}-\d{1,4}-\d{4}$]";
var pt9:String = "[^\d{3}-\d{4}$]";
var msg1:String = "半角数字で入力して下さい";
var msg2:String = "半角英で入力して下さい";
var msg3:String = "半角英数で入力してください";
var msg4:String = "全角カナで入力下さい";
var msg5:String = "全角ひらがなで入力下さい";
var msg6:String = "全角文字で入力して下さい";
var msg7:String = "メールアドレスが違っています";
var msg8:String = "電話番号を見直して下さい";
var msg9:String = "郵便番号を見直して下さい";
}
}