- 浏览: 716780 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (389)
- flex (150)
- java (55)
- flex_sharedObject (4)
- iphone/android (7)
- red5 (4)
- blazeds (19)
- ajax (3)
- flex&java (9)
- 聊天室 (2)
- flex的问题 (1)
- game (8)
- flex_xml (1)
- flex组件学习 (2)
- JGroups (1)
- 中转站 (2)
- ruby (7)
- flex_js (5)
- C/C++ (14)
- perl (2)
- db (13)
- air (10)
- hibernate (8)
- flash_flex_as_3d (2)
- struts (4)
- dwr (8)
- freemarker (2)
- AS (22)
- 工具 (6)
- js_jquery_ext_yui (4)
- .net (1)
- C# (1)
- 前端 (1)
最新评论
-
136900923:
您好,您的代码我不是很懂,我想跟您交流一下,我的qq邮箱:13 ...
hibernate做无限极菜单树如此简单 -
fykyx521:
两个同一个功能
flex_flush_Socket 安全沙箱解决 -
ustb:
你上下两个代码类之间没关系
flex_flush_Socket 安全沙箱解决 -
u010656335:
...
flex发送QQ表情 -
u010656335:
flex发送QQ表情
http://code.google.com/p/as3ui/ 一个类 setSize方法,指定图片宽高
/** * * ScaleBitmap * * @version 1.1 * @author Didier BRUN - http://www.bytearray.org * * @version 1.2.1 * @author Alexandre LEGOUT - http://blog.lalex.com * * @version 1.2.2 * @author Pleh * * Project page : http://www.bytearray.org/?p=118 * */ package org.bytearray.display { import flash.display.Bitmap; import flash.display.BitmapData; import flash.geom.Matrix; import flash.geom.Rectangle; public class ScaleBitmap extends Bitmap { // ------------------------------------------------ // // ---o properties // // ------------------------------------------------ protected var _originalBitmap : BitmapData; protected var _scale9Grid : Rectangle = null; // ------------------------------------------------ // // ---o constructor // // ------------------------------------------------ function ScaleBitmap(bmpData : BitmapData = null, pixelSnapping : String = "auto", smoothing : Boolean = false) { // super constructor super(bmpData, pixelSnapping, smoothing); // original bitmap _originalBitmap = bmpData.clone(); } // ------------------------------------------------ // // ---o public methods // // ------------------------------------------------ /** * setter bitmapData */ override public function set bitmapData(bmpData : BitmapData) : void { _originalBitmap = bmpData.clone(); if (_scale9Grid != null) { if (!validGrid(_scale9Grid)) { _scale9Grid = null; } setSize(bmpData.width, bmpData.height); } else { assignBitmapData(_originalBitmap.clone()); } } /** * setter width */ override public function set width(w : Number) : void { if (w != width) { setSize(w, height); } } /** * setter height */ override public function set height(h : Number) : void { if (h != height) { setSize(width, h); } } /** * set scale9Grid */ override public function set scale9Grid(r : Rectangle) : void { // Check if the given grid is different from the current one if ((_scale9Grid == null && r != null) || (_scale9Grid != null && !_scale9Grid.equals(r))) { if (r == null) { // If deleting scalee9Grid, restore the original bitmap // then resize it (streched) to the previously set dimensions var currentWidth : Number = width; var currentHeight : Number = height; _scale9Grid = null; assignBitmapData(_originalBitmap.clone()); setSize(currentWidth, currentHeight); } else { if (!validGrid(r)) { throw (new Error("#001 - The _scale9Grid does not match the original BitmapData")); return; } _scale9Grid = r.clone(); resizeBitmap(width, height); scaleX = 1; scaleY = 1; } } } /** * assignBitmapData * Update the effective bitmapData */ private function assignBitmapData(bmp : BitmapData) : void { super.bitmapData.dispose(); super.bitmapData = bmp; } private function validGrid(r : Rectangle) : Boolean { return r.right <= _originalBitmap.width && r.bottom <= _originalBitmap.height; } /** * get scale9Grid */ override public function get scale9Grid() : Rectangle { return _scale9Grid; } /** * setSize */ public function setSize(w : Number, h : Number) : void { if (_scale9Grid == null) { super.width = w; super.height = h; } else { w = Math.max(w, _originalBitmap.width - _scale9Grid.width); h = Math.max(h, _originalBitmap.height - _scale9Grid.height); resizeBitmap(w, h); } } /** * get original bitmap */ public function getOriginalBitmapData() : BitmapData { return _originalBitmap; } // ------------------------------------------------ // // ---o protected methods // // ------------------------------------------------ /** * resize bitmap */ protected function resizeBitmap(w : Number, h : Number) : void { var bmpData : BitmapData = new BitmapData(w, h, true, 0x00000000); var rows : Array = [0, _scale9Grid.top, _scale9Grid.bottom, _originalBitmap.height]; var cols : Array = [0, _scale9Grid.left, _scale9Grid.right, _originalBitmap.width]; var dRows : Array = [0, _scale9Grid.top, h - (_originalBitmap.height - _scale9Grid.bottom), h]; var dCols : Array = [0, _scale9Grid.left, w - (_originalBitmap.width - _scale9Grid.right), w]; var origin : Rectangle; var draw : Rectangle; var mat : Matrix = new Matrix(); for (var cx : int = 0;cx < 3; cx++) { for (var cy : int = 0 ;cy < 3; cy++) { origin = new Rectangle(cols[cx], rows[cy], cols[cx + 1] - cols[cx], rows[cy + 1] - rows[cy]); draw = new Rectangle(dCols[cx], dRows[cy], dCols[cx + 1] - dCols[cx], dRows[cy + 1] - dRows[cy]); mat.identity(); mat.a = draw.width / origin.width; mat.d = draw.height / origin.height; mat.tx = draw.x - origin.x * mat.a; mat.ty = draw.y - origin.y * mat.d; bmpData.draw(_originalBitmap, mat, null, null, draw, smoothing); } } assignBitmapData(bmpData); } } }
测试代码 package { import com.bit101.components.ProgressBar; import com.bit101.components.PushButton; import com.bit101.components.Style; import flash.display.Bitmap; import flash.display.MovieClip; import flash.display.SimpleButton; import flash.display.Sprite; import flash.events.Event; import org.bytearray.display.ScaleBitmap; /** * ... * @author yongkang */ public class Main extends Sprite { [Embed(source='/resources/123.jpg')] private var icon:Class; public function Main():void { if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); } private function init(e:Event = null):void { removeEventListener(Event.ADDED_TO_STAGE, init); var bitmap:Bitmap = new icon as Bitmap; var sb:ScaleBitmap = new ScaleBitmap(bitmap.bitmapData); sb.bitmapData = bitmap.bitmapData; sb.setSize(800, 800); this.addChild(sb); } } }
发表评论
-
转深入理解Flash的沙箱 – Security Domains
2014-01-22 09:35 837一篇很经典的进阶文章,国外牛人的分享,清晰明了,图文并茂,适 ... -
flex 很有用的东东!
2010-06-17 23:50 1263网上找了好久,原来API中就有! -
flex出现的一些问题
2010-04-08 12:19 16631.kingnarestyle.swf和flexlib 的Su ... -
flex 样式工作原理【转】
2010-04-08 12:09 1323http://hi.baidu.com/ls_mcx/blog ... -
在FlexBuilder3中使用Actionscript3进行元编程
2010-03-11 19:15 1034http://flash.9ria.com/thread-46 ... -
Error: No class registered for interface mx
2010-02-01 09:36 1244http://www.gold98.net/blog/arti ... -
Flash 视频(FLV)编码,转换,录制,播放方案一网打尽
2010-01-16 18:34 2018http://www.htmlit.com.cn/post/8 ... -
FLEX中使用FLVPlayback控件.
2010-01-16 18:29 1396http://www.cnblogs.com/xxcainia ... -
flex 继承Application及xml命名空间
2009-12-30 18:43 1519<?xml version="1.0" ... -
flex Repeater effert加效果
2009-12-15 17:25 1520package cn.ishion.component { ... -
学习自定义组件---ConstomButton
2009-12-14 15:06 1829效果只是让Button动了下, 上传了flash源文件 p ... -
flex编译生成的As代码
2009-12-09 18:30 1312new flexProject ->起名叫 test ... -
flex自定义preloader
2009-12-09 17:43 1913package cn.ishion.component { ... -
flex自定义程序 preloader 加载多个资源
2009-12-09 02:05 2284package cn.ishion.component { ... -
Flex Builder编译错误An internal build error has occurred的解决方法
2009-12-05 16:44 3212原文:http://as3blog.com/resources ... -
flex uicomponent.addChild(Button) Button不显示
2009-12-04 19:23 2142设置下Button的宽度和高度就行了 var ui:U ... -
as3 xls导出excel乱码问题解决办法
2009-12-04 11:37 3391http://blog.csdn.net/Baijinwen/ ... -
FlashDevelop配置Flex4(gumbo)环境
2009-12-04 10:27 3053http://www.flexrain.cn/fl ... -
flex gooogle code as3xls导出数据到excel
2009-12-03 19:16 2358var ex:ExcelFile=new ExcelFile ... -
Flex坐标系统及转换
2009-12-02 22:10 3097http://flash.9ria.com/thread-40 ...
相关推荐
在本文中,我们将深入探讨由MFC(Microsoft Foundation Classes)编写的GIRD源码,以及在C++编程环境中如何利用这些源码实现基于对话框和Doc/View结构的应用。MFC是一个C++类库,它提供了对Windows API的封装,使得...
标题"ext超酷的grid中放图片(ext3.2.1)"暗示了我们将探讨如何在EXT JS的Grid组件中嵌入和展示图片。EXT JS 3.2.1虽然已经是较旧的版本,但其核心概念和方法在后续版本中仍然适用,因此学习这部分内容对于理解EXT JS...
GT-GIRD是一款杰出的前端表格组件,专为构建高效、响应式的数据展示界面而设计。在Web开发领域,尤其是在处理大量数据的展示时,选择一款性能优异、功能强大的表格组件至关重要。GT-GIRD以其轻量级、快速以及免费的...
【标题】"VC-MS-GIRD.rar" 是一个基于Visual C++(简称VC)开发的电子表格应用程序,它模仿了MS OFFICE中的表格处理软件,如Microsoft Excel的风格。这个项目名为"CellDemo _MS GIRD_gird_表格 excel vc_表格 vc",...
ExtJS 2.0是一款基于JavaScript的开源框架,用于构建富客户端Web应用程序。在这个例子中,我们将探讨如何在ExtJS 2.0中实现动态加载的Grid组件,这是一个非常实用的功能,尤其对于处理大量数据时,可以显著提高用户...
selenium gird 资源part2
Gird网格布局学习笔记分享
当用户对某个图片进行点赞或取消点赞时,星标图片需要相应地改变。这同样在`getView()`中实现,通过设置ImageView的src属性来更换图片资源。 7. 数据刷新: 当用户操作(如点赞或切换图片)后,需要更新Adapter的...
selenium gird资源selenium gird资源part1
【exejs gird filter java action】是一个专题,主要涉及了前端数据展示库ExeJS、Grid组件、过滤功能以及后端处理数据的Java Action技术。这个整合资料集合可能包括了一个Web应用项目,用于演示如何在Java后端和前端...
Gird_Eye模块的Linux上位机,用qt开发,里面涉及到Linux串口通信编程
在"**Echarts参数属性学习Gird演示案例**"中,我们将重点探讨如何使用ECharts的Gird组件来在同一DOM元素内同时展示多种图表,以实现高效的数据呈现和API接口的优化对接。 **Gird组件**是ECharts中用于定义图表区域...
在您的浏览器上创建Bootstrap Gird系统 在浏览器上创建Bootstrap Gird系统,轻松调整大小和拖放功能 支持语言:English
本示例主要介绍了如何在DataGrid中创建一个模板列,以显示数据表中存储的图片路径。这涉及到两个核心知识点:DataGrid的模板列使用和数据绑定。 首先,我们要理解DataGrid的模板列(TemplateColumn)。模板列允许...
在`gird_layout.zip`这个压缩包中,很可能包含了一个使用`Qt`的`网格布局`创建的示例项目。解压并查看这个文件,你将能够看到如何实际应用上述概念,包括布局的创建、控件的添加以及各种属性的设置。这对于学习和...
《深入解析LigerUI中的Grid控件》 在Web开发领域,前端框架的使用极大地提升了开发效率和用户体验。其中,LigerUI是一个优秀的JavaScript库,它提供了丰富的UI组件,包括我们今天要探讨的核心部分——Grid控件。...
本文将深入探讨“Printer first Gird打印预览控件”及其VB源程序,这是一种专用于实现打印预览功能的组件,对于开发者来说,能够极大地提升应用程序的专业性和用户体验。 首先,"Printer first Gird"这个名字暗示了...
在IT领域,瀑布流布局(Masonry Layout)是一种常见的网页设计模式,尤其在展示图片或者内容集合时,这种布局能够使页面看起来更有层次感和视觉吸引力。Google Grid瀑布流相册效果是基于这一布局原理,结合jQuery库...
CSS Grid布局是现代Web开发中一个强大的二维布局系统,它为设计复杂的网页界面提供了更为直观和灵活的方法。在过去的几年里,CSS布局方法经历了从表格布局、浮动元素、定位和inline-block等技术到Flexbox的一维布局...
Ext Grid 是一个强大的数据展示组件,常用于在Web应用程序中展示结构化数据。在Ext Grid中,滚动条功能是至关重要的,特别是在处理大量数据时,它允许用户在不改变窗口大小的情况下浏览数据。本篇文章将深入探讨Ext ...