Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > Java技巧:在屏幕上定位窗口
【标  题】:Java技巧:在屏幕上定位窗口
【关键字】:技巧,Java,窗口,屏幕,Java
【来  源】:网络

Java技巧:在屏幕上定位窗口

Your Ad Here

  Java Abstract Window Toolkit(AWT)的Window.setLocation函数为开发人员提供了一个条理清晰的方法来解决在用户屏幕上定位一个窗口的问题。但用这个方法就必须考虑精确的象素点,这就很麻烦,而用一个类似于java.awt.BorderLayout的系统就要好的多。

  在BorderLayout中,各部分都是由下面这几个区域函数之一定位的:

  BorderLayout.NORTH
  BorderLayout.SOUTH
  BorderLayout.CENTER
  BorderLayout.WEST
  BorderLayout.EAST

  下面的代码用几乎相同的方法在屏幕上定位了一个窗口。它首先确定了五个固定的位置,然后用屏幕大小和窗口大小来定位一个窗口。

  package com.generationjava.awt;

  import java.awt.Dimension;
  import java.awt.Window;

  public final class WindowUtilities {

  // ints used so a case-switch statement can be used.
  static public final int TOP = 0;
  static public final int BOTTOM = 1;
  static public final int CENTER = 2;
  static public final int LEFT = 3;
  static public final int RIGHT = 4;

  /**
  * Position the given window on the screen at the given location,
  *
  * @param w Window to position
  * @param x int horizontal position
  * @param y int vertical position
  */
  static public void positionWindowOnScreen(Window w, int x, int y) {
    Dimension scrn = w.getToolkit().getScreenSize();
    Dimension win = w.getSize();
    int nx = 0;
    int ny = 0;
    switch(x) {
      case LEFT: nx = 0; break;
      case CENTRE: nx = (int)((scrn.width-win.width)/2); break;
      case RIGHT: nx = (int)(scrn.width-win.width); break;
      }
    switch(y) {
      case TOP: ny = 0; break;
      case CENTRE: ny = (int)((scrn.height-win.height)/2); break;
      case BOTTOM: ny = (int)(scrn.height-win.height); break;
    }
    w.setLocation(nx,ny);
    }
   }

  要确定一个窗口的右下角的位置,就要执行下面的代码:

   Window window = ....
   WindowUtilities.positionWindowOnScreen(window,_
   WindowUtilities.RIGHT, WindowUtilities.BOTTOM);

  该方法还可以进行扩展。你可以增加一个简单的centerWindowOnScreen函数,该函数调用了positionWindowOnScreen函数。例如:

  static public final void centerWindowOnScreen(Window w)
  {
     positionWindowOnScreen(w, CENTER, CENTER);
  }
  这两个函数简化了在AWT和Swing中所做的工作,使开发人员可以将更多的时间用在开发用户界面上。(zdnet china)

java开发常用工具总结:【上一篇】
J2EE 开发技术全接触:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 在Java中使用中文编程
  • 教你做酷酷的年历
  • 这个bug错的很无语
  • 《Office SharePoint Server 2007 开发入门指南》交稿!
  • signal 的讨论
  • 微软四个版本Windows爆出漏洞
  • asp下常用正则表达式及字符串验证方法
  • java学习:VisualAge使用技巧
  • 9月,c++欢迎程度排第三
  • VC小技巧(2)-----在任务栏创建图标
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.