當前位置:首頁 » 編程語言 » java獲取窗口

java獲取窗口

發布時間: 2025-01-27 15:31:40

java 源代碼注釋

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;
public class GameTest extends JFrame implements ActionListener{
/*
* 新建一個主面板(這個類可能是自定義的,本程序和API中沒有)。
*/
MainPanel j=new MainPanel();
JButton jPreview;
JLabel label;
Container container;
JPanel panel;
/**
* 主函數
* @param args
*/
public static void main(String[] args) {
//運行程序
new GameTest();
}
/**
* 構造函數。
*
*/
public GameTest()
{
//新建一個標題為「拼圖」的窗口
JFrame fr =new JFrame("拼圖");
//獲取窗口容器。
container=fr.getContentPane();
//創建菜單條
JMenuBar jMenuBar=new JMenuBar();
//以下初始化菜單,並且設置快捷鍵和添加監聽器。
JMenu jMenuGame=new JMenu("游戲(G)");
jMenuGame.setMnemonic('g');

JMenuItem jMenuItemStart = new JMenuItem("開始(S)");
jMenuItemStart.setMnemonic('s');
jMenuItemStart.addActionListener(this);

JMenuItem jMenuItemExit=new JMenuItem("退出(E)");
jMenuItemExit.setMnemonic('e');
jMenuItemExit.addActionListener(this);

jMenuGame.add(jMenuItemStart);
jMenuGame.add(jMenuItemExit);
//初始化按鈕並設置快捷鍵和添加監聽器
JButton jChoice=new JButton("選圖(X)");
jChoice.setMnemonic('x');
jChoice.addActionListener(this);

jPreview=new JButton("預覽(P)");
jPreview.setMnemonic('p');
jPreview.addActionListener(this);
//將菜單和按鈕添加到菜單條中
jMenuBar.add(jMenuGame);
jMenuBar.add(jChoice);
jMenuBar.add(jPreview);
//將菜單條設為該窗口的主菜單
fr.setJMenuBar(jMenuBar);

//將主面板添加到該窗口的容器中。
container.add(j);
//設置大小
fr.setSize(315,360 );
fr.setVisible(true);
//設置默認關閉方式。
fr.setDefaultCloseOperation(3);

}
/**
* 事件處理函數。
*/
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand()=="開始(S)")
{
j.Start();
}
if(e.getActionCommand()=="預覽(P)")
{
j.setVisible(false);
panel=new JPanel();
Icon icon=new ImageIcon("pictrue/pic"+"_"+MainPanel.pictureID+".jpg");
label=new JLabel(icon);
label.setBounds(300, 300, 0, 0);
panel.add(label);
panel.setSize(300, 300);
panel.setVisible(true);
this.container.add(panel);
jPreview.setText("返回(P)");
}
if(e.getActionCommand()=="返回(P)")
{
panel.setVisible(false);
j.setVisible(true);
j.repaint();
jPreview.setText("預覽(P)");
}
if(e.getActionCommand()=="退出(E)")
{
System.exit(0);
}

if(e.getActionCommand()=="選圖(X)")
{
//初始化選擇框,並提供選擇。
Choice pic = new Choice();
pic.add("七里香");
pic.add("依然范特西");
pic.add("八度空間");
pic.add("十一月的肖邦");
pic.add("魔傑座");
pic.add("葉惠美");
pic.add("我很忙");
int i=JOptionPane.showConfirmDialog(this, pic, "選擇圖片", JOptionPane.OK_CANCEL_OPTION);
if(i==JOptionPane.YES_OPTION)
{
//選擇圖片
MainPanel.pictureID=pic.getSelectedIndex()+1;
j.removeAll();
j.reLoadPicture();
j.repaint();
}
}
}

}

㈡ 請問在java中怎麼使用jna 獲取說有的窗口句柄

import com.sun.jna.platform.win32.User32;
import com.sun.jna.platform.win32.WinDef.HWND;
public class Demo1 {

public static void main(String[] args) {
name();
}
//窗體句柄的截獲
public static void name() {
// HWND hwnd = User32.INSTANCE.FindWindow(null, "列印");
String zh="列印";
HWND hwndDialog = User32.INSTANCE.FindWindow(null,zh);
if(hwndDialog==null) {
System.err.println("沒有找到窗體");
}else {
System.err.println("找到窗體"+hwndDialog);
//HWND root, String className, long timeout, TimeUnit unit,String caption
// List<HWND> hwndButton= Win32Util.findHandleByClassNameJKSD(hwndDialog,"Button", 10, TimeUnit.SECONDS,"列印");
// for (HWND hwnd : hwndButton) {
// System.err.println(hwnd);
// }

熱點內容
資料庫欄位索引 發布:2025-01-28 10:33:16 瀏覽:495
android數字滾動 發布:2025-01-28 10:18:51 瀏覽:565
dag見證伺服器是虛擬ip嗎 發布:2025-01-28 10:07:04 瀏覽:605
dz上傳的圖片不顯示 發布:2025-01-28 09:37:42 瀏覽:887
joinsql多表 發布:2025-01-28 09:23:26 瀏覽:729
php數組循環賦值 發布:2025-01-28 09:23:25 瀏覽:134
android42系統 發布:2025-01-28 09:21:59 瀏覽:902
菜單設計c語言 發布:2025-01-28 09:21:54 瀏覽:274
sql多表查詢優化 發布:2025-01-28 09:21:05 瀏覽:503
iphone6便捷訪問 發布:2025-01-28 09:05:11 瀏覽:177