導航:首頁 > 編程語言 > java移動窗口

java移動窗口

發布時間:2022-08-12 08:19:01

java中用window類實現的一個窗口,如何使它可被移動啊!

Window不同於Frame,如果想讓它可以移動的話,你需要自己處理MouseMovation事件和MouseMove事件。
1、MouseDown 時記下當前的滑鼠的位置
2、MouseMove 時調整窗口的位置
3、MouseUp 時終止

⑵ JAVAswing中窗口邊框去掉後怎麼能讓窗口被拖動需要加什麼東西

加滑鼠按下和釋放的事件監聽 根據滑鼠位置設置窗體的位置

⑶ Java 窗口移動

監聽一下窗口關閉事件就可以了WindowEvent。 監聽到關閉事件後代碼大概如下
:假設向左移動出窗口
int locationX ;
while(locationX > 0)
{
locationX -= 10;
this.setLocation(locationX, y);
this.repaint();
Thread.sleep(50);
}
哦。向下移,就是修改y坐標的。也和上面差不多。放心好了。不會不舒服,利用Thread.sleep控制移動延遲,locationY -= speed控制移動的幅度。

⑷ 如何使用Java代碼實現人物在整個窗口中間不動,場景進行移動類似於超級瑪麗那樣的

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class WalkMian extends JFrame implements KeyListener {
Image img;
Image back;
int x = 80, y = 450, dir = 0, num = 0;

// Main
public static void main(String args[]) {
new WalkMian();
}

// Constructor
WalkMian() {
super("Character");
img = getToolkit().getImage("c:\\IMAGE\\walk.png");
back = getToolkit().getImage("c:\\IMAGE\\back.jpg");
addKeyListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBackground(Color.gray);
setSize(800, 610);
setVisible(true);
}

// Paint
public void paint(Graphics g) {
int yoff;
g.drawImage(back, 0, 0, this);
if (img != null) {
yoff = 144;

g.drawImage(img, x, y, x + 144, y + 144, 144, -144+144*dir, yoff + 144, 144*dir,
this);

}
}

⑸ java如何獲取窗口移動後的位置

a.setLayout(new FlowLayout());改成a.setLayout(new FlowLayout(FlowLayout.RIGHT));
指定在布局中居右對齊

⑹ java可以不可以像按鍵精靈一樣,將一個程序的窗口移動到指定屏幕的坐標如果可以,求關鍵代碼。

這個的話,我只能提供一條路子,請查看Java的API,有一個類叫做Robot,其中是這樣介紹的:
public class Robot

extends Object

此類用於為測試自動化、自運行演示程序和其他需要控制滑鼠和鍵盤的應用程序生成本機系統輸入事件。Robot 的主要目的是便於 Java 平台實現自動測試。
使用該類生成輸入事件與將事件發送到 AWT 事件隊列或 AWT
組件的區別在於:事件是在平台的本機輸入隊列中生成的。例如,Robot.mouseMove
將實際移動滑鼠游標,而不是只生成滑鼠移動事件。
注意,某些平台需要特定許可權或擴展來訪問低級輸入控制項。如果當前平台配置不允許使用輸入控制項,那麼試圖構造 Robot 對象時將拋出
AWTException。例如,如果 X 伺服器不支持(或沒有啟用)XTEST 2.2 標准擴展,則 X-Window
系統會拋出異常。
出於自測試之外的目的而使用 Robot 的應用程序應妥善處理這些錯誤條件。

從以下版本開始:

⑺ JAVA SWING 無邊框(無TITLE)窗體如何實現窗體移動

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;

import javax.swing.JFrame;
public class test extends JFrame{
private int xx, yy;
private boolean isDraging = false;
public test(){
setUndecorated(true); // 沒有標題欄
setSize(200, 200);
setVisible(true);
this.addMouseListener(new MouseAdapter() {
public void mousePressed(MouseEvent e) {
isDraging = true;
xx = e.getX();
yy = e.getY();
}

public void mouseReleased(MouseEvent e) {
isDraging = false;
}
});
this.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {
if (isDraging) {
int left = getLocation().x;
int top = getLocation().y;
setLocation(left + e.getX() - xx, top + e.getY() - yy);
}
}
});
}
public static void main(String[] args) {
test t =new test();
t.setDefaultCloseOperation(3);
}
}

⑻ java中如何可以用滑鼠拖著一個窗口但使兩個窗口同時移動,像千千靜聽的兩個窗口一樣

監聽ComponentListener,如:

import java.awt.Rectangle;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;

import javax.swing.JFrame;

public class Test {

public static void main(String[] args) {
final JFrame frame1 = new JFrame();
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame1.setBounds(200, 200, 400, 400);

final JFrame frame2 = new JFrame();
frame1.addComponentListener(new ComponentAdapter() {
public void componentMoved(ComponentEvent e) {
Rectangle rect = frame1.getBounds();
frame2.setLocation(rect.x+rect.width, rect.y);
}
});
frame2.setSize(300, 300);
frame1.setVisible(true);
frame2.setVisible(true);
}

}

⑼ JAVA從窗口跳轉到另一個窗口怎麼寫!

package com.swing.skip;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
/**
* 窗口跳轉
* @author lichen
* @time 2013-1-16
*/
public class CloseSkip extends JFrame{
JFrame frame1;
public void win1(){
frame1=new JFrame("test1");
JPanel panel=new JPanel(true);
JButton btn1=new JButton("Start");
panel.add(btn1);
frame1.add(panel);
btn1.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent arg0) {

new CloseSkip().win2(frame1);
}

});
frame1.setBounds(300, 200, 500, 200);
frame1.setVisible(true);
frame1.setResizable(true);
frame1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void win2(JFrame frame){
frame.setVisible(false);
JFrame frame2=new JFrame("test2");
JPanel panel=new JPanel(true);
JButton btn2=new JButton("Stop");
panel.add(btn2);
frame2.add(panel);
frame2.setBounds(1000, 100, 200, 600);
frame2.setVisible(true);
frame2.setResizable(true);
frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {
new CloseSkip().win1();
}
}

⑽ 怎麼編寫java程序實現"在窗口中,有一個圖片循環地從窗口的左面移動到窗口的右邊"

package test.test;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.image.BufferedImage;

public class TestCopy {

public static void main(String[] args) {
final JFrame f = new JFrame();
JPanel p = new JPanel(new GridLayout(2,1));
f.setContentPane(p);
final JPanel p1 = new JPanel(new BorderLayout());
final JLabel label = new JLabel();
p.add(p1);
p1.add(new JTextField(),BorderLayout.CENTER);
JButton bt = new JButton("COPY");
p1.add(bt,BorderLayout.EAST);
bt.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
BufferedImage bi = (BufferedImage)f.createImage(p1.getWidth(),p1.getHeight());
Graphics g = bi.createGraphics();
p1.print(g);
label.setIcon(new ImageIcon(bi));
}
});

JPanel p2 = new JPanel(new BorderLayout());
p.add(p2);
p2.add(label);
f.setSize(400,400);
f.show();
}
}

閱讀全文

與java移動窗口相關的資料

熱點內容
php個性qq源碼 瀏覽:821
初學c語言顯示源未編譯 瀏覽:245
資產概況源碼 瀏覽:472
dos命令建文件夾命令 瀏覽:379
解壓的密碼htm被屏蔽 瀏覽:502
冬天太冷冰箱壓縮機不啟動怎麼辦 瀏覽:83
手機打開vcf需要什麼編譯器 瀏覽:910
加密磁碟後開機很慢 瀏覽:271
長沙智能雲控系統源碼 瀏覽:258
阿里雲伺服器如何設置操作系統 瀏覽:999
超級命令的英文 瀏覽:784
做賬為什麼要用加密狗 瀏覽:586
考研群體怎麼解壓 瀏覽:159
linux修改命令提示符 瀏覽:226
圓圈裡面k圖標是什麼app 瀏覽:63
pdf加空白頁 瀏覽:948
linux伺服器如何看網卡狀態 瀏覽:318
解壓新奇特視頻 瀏覽:707
圖書信息管理系統java 瀏覽:554
各種直線命令詳解 瀏覽:864