zoukankan      html  css  js  c++  java
  • Provide a Better Visual Feedback – Using Flex CursorManager(Flex鼠标管理 精彩转载)

    Why do you need Flex CursorManager

    Flex is all about User Experience. A Rich Internet Application (RIA) is not just attractive skins or fancy animations. It also means interacting with users and helping them use your application better.

    One important part of User Experience is to provide a better visual feedback. For example, when someone types a model name and clicks Search button, it might take 2-3 seconds to get results from a web service.  What would a user do during that time? He or she probably keeps clicking the Search button, or thinks your application is dead.

    So how to let users know what is going on with your application? You need to give them some visual feedback: like show the busy cursor when waiting for the back end response, and then remove the busy cursor when the data is ready.

    To control the cursor image in Flex, you need CursorManager.

    How to use CursorManager

    Here is how you typically use CursorManager in Flex:

    - Display the default busy cursor
      CursorManager.setBusyCursor();
    
    - Remove the busy cursor
      CursorManager.removeBusyCursor();
    
    - Create a new Cursor from your own cursor class
      [Bindable]
      [Embed(source="assets/heart.gif")]
      private var HeartCursor:Class;
      var cursorID:int = CursorManager.setCursor(HeartCursor);
    
    - Removes a cursor from the cursor list
      CursorManager.removeCursor(cursorID);
    
    - Remove all cursors
      CursorManager.removeAllCursors();

    Sample Code

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="absolute">
    
        <mx:Script>
          <![CDATA[
             import mx.managers.CursorManager;
    
             private var cursorId:int;
    
             [Bindable]
             [Embed(source="assets/heart.gif")]
             private var HeartCursor:Class;
    
             private function showBusyCursor():void {
               CursorManager.setBusyCursor();
             }
    
             private function removeBusyCursor():void {
               CursorManager.removeBusyCursor();
             }            
    
             private function showHeartCursor():void {
               cursorId = CursorManager.setCursor(HeartCursor);
             }
    
             private function removeHeartCursor():void {
               CursorManager.removeCursor(cursorId);
             }
         ]]>
        </mx:Script>
    
        <mx:Panel title="Flex Tutorial - Cursor Manager"
            width="500" height="200"
            horizontalCenter="0" verticalCenter="0" verticalGap="20"
            horizontalAlign="center" verticalAlign="middle">
    
            <mx:HBox>
              <mx:Button label="Show Busy Cursor"
                         click="showBusyCursor()"/>
              <mx:Button label="Remove Busy Cursor"
                         click="removeBusyCursor()"/>
            </mx:HBox>
    
            <mx:HRule width="95%"/>
    
            <mx:HBox>
              <mx:Button label="Show Heart Cursor"
                         click="showHeartCursor()"/>
              <mx:Button label="Remove Heart Cursor"
                         click="removeHeartCursor()"/>
            </mx:HBox>
       </mx:Panel>
    
    </mx:Application>

    Conclusion

    CursorManager offers a convienent way for you to control cursor display in Flex. By using it properly, you will provide a better visual feedback to users, thus enhance the user experience of your applicaton.

     
     
     
  • 相关阅读:
    源码安装mysql-5.6.32.tar.gz
    linux 小喇叭 没了
    [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
    ARP协议和DNS协议对比
    subversion 版本库数据迁移 从一台服务器迁移到另一台新有服务器
    局域网通过ip查mac地址、通过mac地址查ip方法
    kmv xml 文件配置vnc 端口冲突 会无法启动
    kvm xxx.xml文件的位置
    select into from 提示 Undeclared variable.....错误的解决办法 && select into from 和 insert into select 的用法和区别
    Redux 入门教程
  • 原文地址:https://www.cnblogs.com/wuhenke/p/1608222.html
Copyright © 2011-2022 走看看