为什么flex程序调用video类扑捉摄像头画面会出现黑边

为什么flex程序调用video类扑捉摄像头画面会出现黑边,第1张

加上下面这句

import flasheventsTimerEvent;

package {

import flashmediaCamera;

import flashmediaVideo;

import flasheventsEvent;

import flashutilsTimer;

import flasheventsTimerEvent;

import flashdisplaySprite;

public class alarm extends Sprite {

public var cam:Camera=new Camera();

public var vid:Video=new Video();

public var alert:Alert=new Alert();

public var timer:Timer=new Timer(3500);

public function alarm(){

timeraddEventListener(TimerEventTIMER,onframe);

cam=CameragetCamera();

camsetLoopback(true);

vidattachCamera(cam);

timerstart();

addChild(vid);

}

//trace(alert)

public function onframe(e:TimerEvent) {

trace(camactivityLevel);

if (camactivityLevel>15) {

alertplay();

}

}

}

}

另外这个类是你写的吗,不标准呀同,还有那个Alert类在flash IDE里没有的,是flex里的如果你在flash里面用上面代码也会也错,你要保证public var alert:Alert=new Alert();这句是有效的

在ubutu上安装 yacc的命令:

yylex()是由flex创建的扫描程序的入口点,调用yylex()启动或者重新开始扫描。Lex编写的yylex()从名为yyin的FILE 文件指针中读取字符。 如果未设置yyin,则默认为标准输入。 它输出到yyout,如果未设置默认为stdout。 还可以在yywrap()函数中修改yyin,该函数在文件末尾调用。 它允许打开另一个文件,并继续解析。如果是这种情况,将其返回0。如果要结束此文件的解析,将其返回1。一般来说,每次调用yylex()都会返回一个表示标记类型的整数值。

flex的结构如下:

一个l的文件里的结构大概如上,用%%分隔开来。分为三个区:

使用诸如Flex的词法生成器的好处是使得程序员可以集中考虑词法的特点;而不是具体如何实现词法分析。

参考: >

刚用AIR把地图编辑器写完,功能相对很可以后续还会做更大的调整 这里说下,如何给AIR桌面应用程序设置图标

创建AIR应用程序后,工程会自动生成 XXX-appxml , XML中有 icon 节点,具体说明和详细见下:

Java代码

<!-- The icon the system uses for the application For at least one resolution,

specify the path to a PNG file included in the AIR package Optional -->

<icon>

<image16x16>assets/icons/me-16-16png</image16x16>

<image32x32>assets/icons/mepng</image32x32>

<!--

<image48x48></image48x48>

<image128x128></image128x128>

-->

</icon>

默认是注释掉的,需要设置图标时,使用他就好了,然后在image16x16等后,加上你设计好的图标就好我上边就设置了两个图标,一个是3232的,用来快捷方式显示,一个1616的,用来在程序窗口显示和桌面地步导航显示

这些图标放在应用程序的哪个目录呢:

我建议放在SRC目录下,这样的话就可以直接像我上边一样使用该图标了

updateTime()hour+"时"+updateTime()miniter+"分"+updateTime()second+"秒";

你应该看看这里是什么意思啊?

这种用法正确么?

你可以把变量hour,miniter,second的声明放到函数的外面去

在给str赋值的时候

str = "距房间关闭还有"+hour+"时"+miniter+"分"+second+"秒";

另外,根据你的设想,你希望,通过目前的这种结构,实现类中timer的变值不断地更新到TextInput呈现出来。

根据我个人的开发经验,这种实现需要类的内部派发消息,来实现外部对象的相应改变。

函数调用的模式应该是一样的,应该都是一次性调用接受返回,返回结束后,函数入口地址应该已经释放,可能你认为这个入口在想textInput组件赋值时被hold住了,这里就造成了只要类的函数不停的return,外部组件就能不断的接收了错误概念。

但是如果将textInput置于RoomClock内部作为一个组件变量,在外部声明一个计时组件,我想这样可能会实现你的设想。

以上纯属个人开发经验和个人说法,有不当和错误的地方欢迎指出批评,期待共同进步!

上一章即微信小程序之view的flex布局(1)里,我们学习了flex容器的属性,总结一下它里面包括

(1)flex-direction 设置容器内子元素即flex-item的排列方向。

(2)flex-warp 设置容器内子元素是否换行。

(3)justify-content 设置子元素在横轴即X轴的排列位置

(4)align-items 设置子元素在Y轴的排列位置

(5)align-content 设置子元素在多个主轴线上排列的位置。

下面我们来讲讲 flex-item的属性,在flex容器中,每个子元素就是一个flex-item

如果item没有设置order,则order默认为0,如图我设置了view2,3,4的位置为3,2,1 看效果图:

如果所有项目的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他项多一倍。效果看图:

因为设置了view3,4设置了left-align属性 ,所以没有均分,大家可以去掉尝试一下。

直接上图  

flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。

该属性可能取6个值,除了auto,其他都与align-items属性完全一致。

资料地址     demo 地址

最初打算使用scroll-view实现,效果好、流畅、有惯性滑动,但由于滚动条没法去掉、无法实现上下层的帧布局,最终放弃了。 还是自己写个吧,利用手势事件。遗憾的是小程序中目前没有像Android中快速滑动事件,所以,要实现惯性滑动是不可能了。 item的布局: 推荐小程序优先使用flex布局,完全够用。这也是微信推荐的。 <view wx:for="{{cardTeams}}" wx:for-item="cardTeam" id="{{cardTeam/images/20150928/tooopen_sy_143912755726jpg" mode="scaleToFill"></image> <view class="number-wrapper"> <text class="name">{{cardTeamname}}</text> <view class="count-wrapper"> <view class="decrease-btn">-</view> <text class="count">1</text> <view class="increase-btn">+</view> </view> <view class="price-wrapper"> <text class="unit">¥</text> <text class="price">9980</text> </view> </view> <view class="ok"><view class="inner-ok">确定</view></view> <view class="remove" data-id="{{cardTeamid}}" bindtap="delItem"><view>删除</view></view> </view> 主要是将删除按钮的设为绝对定位(position: absolute): item remove{ width: 60px; height: 100%; background-color: red; position: absolute; top: 0; right: -60px; display: flex; justify-content: center; align-items: center; } Page({ data: { cardTeams:[{"id":"aaaaa", "name":"android教程", "url":"", "right":0, "startRight":0},{"id":"bbbb", "name":"小程序教程", "url":"", "right":0, "startRight":0}] }, drawStart : function(e){ // consolelog("drawStart"); var touch = etouches[0]; startX = touchclientX; startY = touchclientY; var cardTeams = thisdatacardTeams; for(var i in cardTeams){ var data = cardTeams[i]; datastartRight = dataright; } key = true; }, drawEnd : function(e){ consolelog("drawEnd"); var cardTeams = thisdatacardTeams; for(var i in cardTeams){ var data = cardTeams[i]; if(dataright <= 100/2){ dataright = 0; }else{ dataright = maxRight; } } thissetData({ cardTeams:cardTeams }); }, drawMove : function(e){ //consolelog("drawMove"); var self = this; var dataId = ecurrentTargetid; var cardTeams = thisdatacardTeams; if(key){ var touch = etouches[0]; endX = touchclientX; endY = touchclientY; consolelog("startX="+startX+" endX="+endX ); if(endX - startX == 0) return ; var res = cardTeams; //从右往左 if((endX - startX) < 0){ for(var k in res){ var data = res[k]; if(res[k]id == dataId){ var startRight = res[k]startRight; var change = startX - endX; startRight += change; if(startRight > maxRight) startRight = maxRight; res[k]right = startRight; } } }else{//从左往右 for(var k in res){ var data = res[k]; if(res[k]id == dataId){ var startRight = res[k]startRight; var change = endX - startX; startRight -= change; if(startRight < 0) startRight = 0; res[k]right = startRight ; } } } selfsetData({ cardTeams:cardTeams }); } }, //删除item delItem: function(e){ var dataId = etargetdatasetid; consolelog("删除"+dataId); var cardTeams = thisdatacardTeams; var newCardTeams = []; for(var i in cardTeams){ var item = cardTeams[i]; if(itemid != dataId){ newCardTeamspush(item); } } thissetData({ cardTeams:newCardTeams }); }, onLoad: function () { consolelog('onLoad:'+appglobalDatadomain) } }) drawStart用于记录手指触碰时的位置,drawMove记录手指滑动的位置,两者的差值就是删除按钮的偏移量 drawEnd手指抬起时触发,用于设置d回、摊开效果。目前我的是超过一半自动d开,不足一半自动收回。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你好:

想在html上用标签调用的话,Flex会生成一个swf就调用这个嵌入js中,或者html直接打开!!!你说的exe是没有的。Flex AIR桌面应用开发倒是能导出桌面应用程序,但不是exe后缀,是air后缀,而且你要保证机器上安装有adobe air的安装环境才能装!

Flex 是一个高效、免费的开源框架,可用于构建具有表现力的 Web 应用程序,这些应用程序利用 Adobe Flash Player和 Adobe AIR, 运行时跨浏览器、桌面和 *** 作系统实现一致的部署。虽然只能使用 Flex 框架构建 Flex 应用程序,但Adobe Flash Builder™(之前称为 Adobe Flex Builder™)软件可以通过智能编码、交互式遍历调试以及可视设计用户界面布局等功能加快开发。 使用 Flex 创建的 RIA 可运行于使用 Adobe Flash Player 软件的浏览器中,或在浏览器外运行于跨 *** 作系统运行时 Adobe AIR上,它们可以跨所有主要浏览器、在桌面上实现一致的运行。连接到 Internet 的计算机中超过 98% 装有 Flash Player,这是一个企业级客户端运行时,它的高级矢量图形能处理要求最高、数据密集型应用程序,同时达到桌面应用程序的执行速度。通过利用 AIR,Flex 应用程序可以访问本地数据和系统资源。

Macromedia Flash是强大的矢量动画编辑工具,在做动画起家之后,Flash一直在谋求RIA(rich internet application)富客户端的霸主地位,最有影响的是,已经推出了面向对象的编程脚本ActionScript30,并且建立起类似于java swing的类库和相应component(组件)。Flex是通过java或者net等非Flash途径,解释mxml文件组织components,并生成相应的swf文件。Flex的component和flash的component很相似,但是有所改进增强。目前Macromedia公司已经被ADOBE公司收购。当前(2011年11月)的flex版本为46。 运用Flash是完全可以做到flex的效果的,为什么还需要flex呢?这里面有两个原因: 1:为了迎合更多的developers(开发者)。Flash天生是为了designer(设计者)设计的,界面还有flash的动画概念和程序开发人员格格不入,为了吸引更多的jsp/asp/php等程序员,Macromedia推出了Flex,用非常简单的mxml来描述界面给jsp/asp/php程序人员使用(x/d)html非常相似,而且mxml更加规范化、标准化。 2:为了一个标准。大家一定听说过微软 *** 作系统vista(后续的win7也是同一核心),在vista推出的同时微软也推出了新的语言xaml,一种界面描述语言,与之相应的就是smart client和flex非常相似的东西(即SilverLight)。Mxml和Xaml的也很相似… …这是人机交互技术的进步的重要体现,即内部逻辑与外部界面交互相分离。 Flex和j2ee/net其实没什么关系,Macromedia用java做出来个应用把flash的技术融合到J2EE里面,再用net的技术做出来个net应用把flash技术融合到net里面去;应该说flex解决了J2EE里面和net里面最繁琐的问题那就是web 客户端的问题。

成因

传统的程序员在开发动画应用方面存在困难,Flex 平台最初就是因此而产生。Flex 试图通过提供一个程序员们已经熟知的工作流和编程模型来改善这个问题。 RIA相互之间关系

Flex 最初是作为一个J2EE(Java 2 Platform, Enterprise Edition)应用,或者可以说是JSP(JavaServer Pages)标签库而发布的。它可以把运行中的MXML(Flex标记语言)和ActionScript编译成FLASH应用程序(即二进制的SWF文件)。最新版的FLEX支持创建静态文件,该文件使用解释编译方式并且不需要购买服务器许可证就可以在线部署。 Flex的目标是让程序员更快更简单地开发RIA应用。在多层式开发模型中,Flex应用属于表现层。 Flex 采用GUI界面开发,使用基于XML的MXML语言。Flex 具有多种组件,可实现Web Services,远程对象,drag and drop,列排序,图表等功能;FLEX内建动画效果和其它简单互动界面等。相对于基于HTML的应用(如PHP、ASP、JSP、ColdFusion及CFMX等)在每个请求时都需要执行服务器端的模板,由于客户端只需要载入一次,FLEX应用程序的工作流被大大改善。FLEX的语言和文件结构也试图把应用程序的逻辑从设计中分离出来。 Flex 服务器也是客户端和XML Web Services及远程对象(Coldfusion CFCs,或Java类,等支持Action Message Format的其他对象)之间通讯的通路。 一般被认为是 Flex 替代品的是OpenLaszlo和AJAX技术。

编辑本段Flex应用前景

作为新一代的富客户端互联网技术的佼佼者,Flex这种技术已经被越来越多的公司所采用,被越来越多的用户和程序员所接受。以下列出Flex十大优势: 1、Flex与Flash:可以让普通程序员开发制作Flash成为可能 2、界面表现能力一流。 3、RIA富客户端应用,解决了异步调用,界面无刷新,浏览器兼容性等多项难题 4、对流媒体的支持:Flex是被公认为流媒体技术支持最好的应用 5、平台的可用性:根据ADOBE公司的说法,Flash player在全世界一半的PC机器上安装度为998% 6、跨平台:Flash player能够在linux下运行,也可以在手机上运行,所以不用担心绑死在WINDOWS上 7、对底层的可 *** 作性:Flex能够调用底层的东西,比如可以调用摄像头实现视频,而且视频本身就嵌入在Flex应用中,由Flex player直接播放。 8、平台的后续运营和发展前景:Flex是由ADOBE公司推出的且开源 9、有充足的学习环境: Flex官方样式配置工具,可以在线配置Flex应用程序各种控件的外观样式,改程序也是用Flex编写的,大家可以想象Flex可以做到什么程度的应用了,而且这么漂亮的界面,根本不用做任何和美工,都是直接用样式实现即可。 10可以用任何你熟悉的WEB编程平台作为后台数据访问层,可以使用 net,php,jsp,webservice 。

编辑本段Flex在Adobe规划中的定位

2011年11月,adobe宣布对移动浏览器上的flash player不再支持新版本升级。并建议开发者使用html5 代替开发移动程序。 到11年12月,adobe解说已经让部分内部开发者转到html5的研究上, 但承诺继续支持flash技术。从长远来看adobe在现在放弃部分领域 在将来可能也会逐步放弃其他flex/flash的传统领域,

Flex 应用开发步骤

以下直接来源于Flex 20 Beta 3的帮助文件: 使用一系统预定义组件(窗口,按钮等)来定义一个开发界面。 组织安排组件,现在用户自定义的界面设计。 使用风格和主题来定义可见设计。 增加动态动作,如应用程序之间的互动。 定义并在需要时连接上一个数据服务。 从源代码生成一个在Flash播放器中运行的SWF文件。

版本历史

Flex 10-2004年3月 Flex 15-2004年10月 版本

Flex 20 (Alpha)-2005年10月 Flex 20 Beta 1-2006年2月 Flex 20 Beta 2-2006年3月 Flex 20 Beta 3-2006年5月 Flex 20 Final-2006年6月28日 Flex 201 - 2007年1月5日 Flex 30 Beta 1 - 2007年1月11日 Flex 30 Beta 2 - 2007年10月1日 Flex 30 Beta 3 - 2007年12月12日 Flex 30 - 2008年2月25日 Flex 31 - 2008年8月15日 Flex 32 - 2008年11月17日 Flex 33 - 2009年3月4日 Flex 34 - 2009年8月18日 Flex 4十大主要特性变化一览 1 集成Adobe Catalyst 2 Spark组件架构 3 MXML 2009 4 对View States的改进 5 FXG支持 6 皮肤增强 7 更新的布局组件 8 Flash Builder 4 9 编译器性能 10 新的文本功能

采用Adobe Flex & AIR技术的经典应用

1、eBay eBay桌面是构建于Adobe AIR上的一个应用程序,程序创建了与eBay客户的持久连接。eBay桌面实时地直接将产品供货通知和拍卖更新发布给买主,这样用户不需要打开浏览器进入eBay网站就可以获取最新信息。 2、纳斯达克股票市场公司 NASDAQ Market Replay使用Adobe Flex和Adobe AIR在桌面上发布一个RIA,让金融专业人士能够重放任何时间点市场活动的详情。 3、纽约时报公司 纽约时报公司正在开始ShifD,一个新的RIA,允许使用者在计算机和移动设备之间切换内容。ShifD工作在Web网站和移动设备之上以及两者之间,通过一个可下载的AIR应用程序提供给人们一种欣赏移动媒体的方式。 4、CCTV网络电视奥运台 由 Adobe Flex 制作、Adobe Flash 技术加以传递前所未有的网页体验。其中包含由 CCTV 奥运媒体团队所提供的奥运赛事成绩、统计资料,以及多样化的背景数据、比赛规则及专家分析等。同时,透过社交网络功能,还能让运动迷与朋友们实时分享各种奥运赛事意见及看法。

Flex与Flash的关系

首先这里想说的是,Flash并非只是一个单纯的矢量动画创作工具,而是一个凭借脚本语言ActionScript在功能和定位上不断演变的网络应用开发工具。早在Flash MX的时候就已经成为macromedia 推广RIA战略的工具。但是毕竟Flash最初的定位是面向美术动画设计师的矢量动画创作工具,并不适合传统的开发人员。于是Flex成为开发者们的首选。 与FLASH

Flex和Flash都以ActionScript作为其核心编程语言,并被编译成swf文件运行于Flashplayer虚拟机里。因此Flex也继承了Flash在表示层上先天性的美感、除了视觉上的舒适感外,还天生具备方便的矢量图形、动画和媒体处理接口。 虽然Flex和Flash有众多的相似点,但是不同之处仍然很多: 1尽管公用ActionScript,但是使用的库并不完全相同,更合适的说法是两者使用着两套具有极大“功能重叠”范围的库。 2Flash偏向的是美术动画设计师人员,所以更容易发挥特效处理的优势,Flex偏向开发人员,所以容易做出具有丰富交互功能的应用程序。 3Flash只能以ActionScript脚本的形式开发(舞台被关联到一个称之为 document class的类里),另外舞台元素也是可以绑定脚本的,不过从软件工程的角度讲不建议这样用,Flex还可以使用称作mxml的标记语言来描述应用的外观和行为,mxml中可以直接嵌入ActionScript脚本。 4由于第三点而造成的两者市场定位不同,Flex是面向企业级的网络应用程序,Flash则面向诸如平面动画、广告设计等多媒体展示程序。 5借助Flash Lite这一移动设备上的Flashplayer,Flash可以开发移动应用,Flex则不行。 6Flash的编程模型是基于时间轴的,Flex的则是基于窗体,虽然它运行在网页里。

Flex的技术框架

Flex技术包括以下几个主要技术框架: 1 描述应用程序界面的XML语言(MXML); 2 符合ECMA规范的脚本语言(ActionScript),处理用户和系统的事件,构建复杂的数据模型; 3 一个基础类库; 4 运行时的即时服务; 5 由MXML与ActionScript文件生成swf文件的编译器。

什么是用RIA?

传统网络程序的开发是基于页面的、服务器端数据传递的模式,把网络程序的表现层建立于HTML页面之上,而HTML是适合于文本的,传统的基于页面的系统已经渐渐不能满足网络浏览者的更高的、全方位的体验要求了。而富互联网应用(Rich Internet Applications,缩写为RIA)的出现就是为了解决这个问题。 RIA面向用户

富互联网应用程序是下一代的将桌面应用程序的交互式用户体验与传统的WEB应用的部署灵活性和成本分析结合起来的网络应用程序。富互联网应用程序中的富客户技术通过提供可承载已编译客户端应用程序(以文件形式,用>

以上就是关于为什么flex程序调用video类扑捉摄像头画面会出现黑边全部的内容,包括:为什么flex程序调用video类扑捉摄像头画面会出现黑边、词法分析工具flex的安装及使用(Ubuntu)、flex android 应用程序图标怎么设置等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9768127.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存