<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" title="飞梦论坛发帖小助手V1.1" layout="absolute" fontSize="12" width="900" height="600" showStatusBar="false" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#C4CCF2, #C4CCF2]">
<mx:Style source="assets/css/flex_skins.css"/>
<mx:Script>
<![CDATA[
import com.flymz.luntan.AnzhuoParse;
import mx.rpc.events.ResultEvent;
import com.flymz.util.XmlUtil;
import com.flymz.SettingWindow;
import mx.managers.PopUpManager;
import mx.controls.Alert;
import mx.utils.StringUtil;
import com.flymz.luntan.CsdnParse;
import mx.events.ListEvent;
import mx.events.ItemClickEvent;
private var csdnParse:CsdnParse;
private var anzhuoParse:AnzhuoParse;
/**改变论坛*/
private function changeLt(event:ListEvent):void{
var slabel:String = event.currentTarget.selectedLabel;
switch(slabel){
case 'CSDN':
csdnParse = new CsdnParse(this);
/**获取用户信息*/
XmlUtil.readXml(XmlUtil.USER_XML,userResultHandler);
valicode.visible = true;
logArea.text = '';
csdnParse.logShow('欢迎访问CSDN论坛,正在获取验证码......');
break;
case '安卓网':
anzhuoParse = new AnzhuoParse(this);
valicode.visible = false;
/**获取用户信息*/
XmlUtil.readXml(XmlUtil.USER_XML,userResultHandler);
logArea.text = '';
anzhuoParse.logShow('欢迎使用安卓网发帖小助手.........');
break;
}
}
private function userResultHandler(event:ResultEvent):void{
var children:XMLList = new XML(event.result).children();
for(var i:int=0;i<children.length();i++){
var forumStr:String = children[i].@forum;
if(lt.selectedLabel==forumStr){
userInfo.dataProvider = children[i].children();
break;
}
}
}
/**生成验证码*/
private function genValidateImage():void{
var ltType:String = lt.selectedLabel;
switch(ltType){
case 'CSDN':
csdnParse.genValidateImageAgain();
csdnParse.logShow('重新生成验证码.');
break;
}
}
/**系统登录*/
private function loginSystem():void{
var ltType:String = lt.selectedLabel;
switch(ltType){
case 'CSDN':
if(StringUtil.trim(validateNum.text)==''){
Alert.show('请输入验证码!','提示');
return;
}
if(userInfo.selectedLabel==''){
Alert.show('请选择用户!','提示');
return;
}
csdnParse.userId = userInfo.selectedLabel;
csdnParse.password = userInfo.selectedItem.@password;
csdnParse.validateNum = validateNum.text;
csdnParse.loginSystem();
break;
case '安卓网':
if(userInfo.selectedLabel==''){
Alert.show('请选择用户!','提示');
return;
}
anzhuoParse.loginUser(userInfo.selectedLabel,userInfo.selectedItem.@password);
break;
}
}
/**回复帖子*/
private function replyArt():void{
var ltType:String = lt.selectedLabel;
switch(ltType){
case 'CSDN':
csdnParse.replyArticle();
break;
case '安卓网':
anzhuoParse.replyArticle();
break;
}
}
private function sendNewArticle():void{
Alert.show('系统尚未实现该接口。','提示');
}
private function setting():void{
var pop:SettingWindow = SettingWindow(PopUpManager.createPopUp(this,SettingWindow,true));
pop.x = (this.width-pop.width)/2;
pop.y = (this.height-pop.height)/2;
}
]]>
</mx:Script>
<mx:ApplicationControlBar left="10" right="10" top="10">
<mx:Label text="论坛"/>
<mx:ComboBox prompt="请选择" id="lt" change="changeLt(event)">
<mx:dataProvider>
<mx:String>CSDN</mx:String>
<mx:String>安卓网</mx:String>
</mx:dataProvider>
</mx:ComboBox>
<mx:VRule height="30"/>
<mx:Label text="用户"/>
<mx:ComboBox id="userInfo" labelField="@userName" width="110" prompt="请选择">
</mx:ComboBox>
<mx:HBox id="valicode" visible="false">
<mx:VRule height="30"/>
<mx:Label text="验证码"/>
<mx:TextInput width="81" id="validateNum"/>
<mx:Image id="validateImage" height="35" width="120" click="genValidateImage()" useHandCursor="true" buttonMode="true"/>
<mx:VRule height="30"/>
</mx:HBox>
<mx:Button label="登录" click="loginSystem()"/>
<mx:Button label="回帖" id="replyBtn" click="replyArt()" enabled="true"/>
<mx:Button label="发表新帖" id="newBtn" click="sendNewArticle()" enabled="false"/>
<mx:Button label="设置" click="setting()"/>
</mx:ApplicationControlBar>
<mx:TextArea top="90" left="10" right="10" id="logArea" bottom="10" wordWrap="true" editable="false"/>
<mx:Label text="运行日志监控台" left="10" top="70"/>
<mx:Label top="70" right="30" id="loginState" width="150"/>
</mx:WindowedApplication>
package com.flymz.luntan
{
import flash.events.Event;
import flash.net.URLRequest;
import mx.controls.Alert;
import mx.controls.TextArea;
import mx.core.FlexHTMLLoader;
public class AnzhuoParse
{
public function AnzhuoParse(login:Login)
{
this.login = login;
this._logArea = login.logArea;
html = new FlexHTMLLoader();
}
private var userName:String;
private var password:String;
private var login:Login;
private var _logArea:TextArea;
private var html:FlexHTMLLoader;
/**论坛登录地址*/
private var loginPath:String = 'http://www.hiapk.com/bbs/logging.php?action=login';
private var loginSubmit:String = 'http://www.hiapk.com/bbs/logging.php?action=login&loginsubmit=yes';
/**登录成功后转向的地址*/
private var successPath:String = 'http://www.hiapk.com/bbs/';
/**
* 用户登陆
*/
public function loginUser(userName:String,password:String):void{
this.userName = userName;
this.password = password;
html.load(new URLRequest(loginPath));
html.addEventListener(Event.COMPLETE,completeHandler);
}
/**
* 回复帖子
*/
public function replyArticle():void
{
}
private function completeHandler(event:Event):void{
if(html.window.document.body==null){
logShow('初始化登录失败!');
return;
}
var inner:String = html.window.document.body.innerHTML;
var loc:String = html.location;
logShow(loc);
switch(loc){
case loginPath:
logShow('加载登录页面成功,正在准备登录...');
html.window.document.getElementsByName('username')[0].value=userName;
html.window.document.getElementById('password').value = password;
html.window.document.getElementById('cookietime').checked='checked';
html.window.document.getElementById('loginform').submit();
break;
case loginSubmit:
logShow(inner);
break;
case successPath:
if(inner.indexOf(userName)!=-1){
login.loginState.htmlText = '用户“<u>'+userName+'</u>”登录中.';
login.replyBtn.enabled = true;
login.newBtn.enabled = true;
logShow('用户'+userName+'登录成功!');
}else{
logShow('用户'+userName+'登录失败!可能用户名/密码不正确!');
}
break;
}
}
public function logShow(log:String):void{
_logArea.htmlText = _logArea.htmlText+'安卓网提示:'+log+'\n';
}
}
}
分享到:
相关推荐
小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 FlexLayout布局 (代码+截图)小程序源码 Flex...
通过研究这些源代码,开发者可以深入学习Flex4的编程技巧,提升开发能力,同时也可以借鉴其中的设计模式和最佳实践,提高代码质量。文件名"SourceCode"表明这个压缩包包含的正是这些源码文件,等待开发者去探索和...
《flex麻将和牌源代码解析》 在信息技术领域,游戏开发是其中不可或缺的一部分,而麻将作为深受大众喜爱的传统娱乐活动,其电子化形式——网络麻将,更是吸引了众多开发者参与其中。本篇我们将深入探讨一个基于Flex...
Flex 4,全称为Adobe Flex 4,是Adobe公司推出的一款强大的富互联网应用程序(RIA)开发框架,主要用于构建具有丰富用户体验的Web应用。这个框架基于ActionScript 3.0编程语言,结合了MXML和AS3的混合编程模型,极大...
Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex 代码格式化Flex ...
flex完全手册源代码详解3希望对大家学习有帮住
Flex源代码 Flexsource flex3源代码 flex3source 不是反编译的源代码,带注释的源代码 你值得拥有!!! 参见博客:http://blog.csdn.net/wojiao555555/article/details/11650679
Sublime Text是一款广受欢迎的代码编辑器,拥有强大的代码片段功能,可以帮助设计师和开发者提高工作效率。这个名为“wwek-plugin-sublime-snippets”的压缩包文件,很可能是为Sublime Text设计的一套CSS代码片段...
Flex for Android 90分钟完全入门是一门针对初学者的快速教程,旨在帮助开发者在短时间内掌握使用Adobe Flex技术开发Android应用程序的基本技能。Flex是Adobe公司推出的一种基于ActionScript的开源框架,它允许...
Flex是Adobe公司开发的一种用于构建富互联网应用程序(RIA)的开放源代码框架,它基于ActionScript编程语言和MXML标记语言。这些源代码例子可能是针对Flex SDK的不同版本,包括了第9、10、11、12和13章的内容,这...
基于FLEX技术的实例代码 ,代码实例来自于《FLEX 3.0 实例开发详解》,非原创代码。
flex画图测试程序代码。内含2个文件,flex画图.mxml 和DrawPanel.as。希望大家少走弯路,学习借鉴。
Flex 发送邮件前台代码示例 Flex 发送邮件前台代码示例 Flex 发送邮件前台代码示例
《Flex完全手册源代码详解4》是一本深入探讨Adobe Flex技术的专业书籍,其核心内容是通过源代码解析来帮助读者理解和掌握Flex编程的关键概念和技术。这本书可能是系列的一部分,旨在逐步深化对Flex的理解,特别是...
RSA加密解密 Flex 和 C#互通代码。因为。net 的加密类与flex crypto不通用,不能实现,c#加密,flex解密,且只能公匙加密、私匙解密。因此整理出两边通用的加密类。实现简单,可以公匙加密私匙解密,或私匙加密公匙...
《Flex Builder 3 代码格式化与自动化注释详解》 Flex Builder 3,作为Adobe公司推出的基于Eclipse的开发工具,是专为构建富互联网应用程序(RIA)而设计的,尤其是针对Adobe Flex和ActionScript的开发。在编程过程...
《Flex4权威指南》是一本深入探讨Adobe Flex 4开发技术的专业书籍,其源代码提供了丰富的实例和示例,帮助读者更好地理解和应用Flex 4框架。Flex 4,也称为Flash Builder 4,是Adobe公司推出的一个强大的RIA(Rich ...
标题中的“flex lcds 用户登录代码”涉及到的技术领域主要包括Flex技术、LCD屏幕显示以及用户登录系统的设计与实现。Flex是一种用于构建富互联网应用程序(RIA)的开放源代码框架,主要基于ActionScript和MXML,常...
在Flex开发中,页面与代码分离是一种常见的最佳实践,它有助于提高代码的可维护性、可读性和可扩展性。Flex是一种基于ActionScript和Flash Player的开源框架,主要用于构建富互联网应用程序(RIA)。本资源“Flex ...
Flex购物车整站代码是一个基于Adobe Flex 3技术构建的电子商务网站示例,适用于初学者进行学习和实践。Flex是一个强大的富互联网应用(RIA)开发框架,它使用MXML和ActionScript编程语言,允许开发者创建交互性强、...