国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ 類庫(kù)下載 java類庫(kù) グラフィカル ユーザー インターフェイス GUI

グラフィカル ユーザー インターフェイス GUI

Oct 19, 2016 am 09:35 AM

1. 主要な JavaGUI 開(kāi)発ツール - Swing クラス ライブラリの誕生と機(jī)能

資格のある Java 開(kāi)発者は、テクノロジーを習(xí)得するだけでなく、ある程度の Java の歴史的背景知識(shí)も持っている必要があります。そこでまず、JavaGUI 開(kāi)発に使用される主要なクラス ライブラリである Swing を簡(jiǎn)単に紹介します。

Java 1.0の時(shí)代には、GUIを設(shè)計(jì)するための基本的なクラスライブラリであるAbstract Window Toolkit、略してAWTがありました。 AWT ライブラリの動(dòng)作原理は、ユーザー インターフェイス要素の処理タスクをターゲット プラットフォーム (オペレーティング システム) のローカル GUI ツールボックスに委任することであり、ローカル GUI ツールボックスはユーザー インターフェイス要素の作成とアクションを擔(dān)當(dāng)します。この作業(yè)方法には利點(diǎn)と欠點(diǎn)があります。まず利點(diǎn)について説明します:

処理速度が速くなる可能性があります。

さまざまなプラットフォームに適応でき、「一度書(shū)いたらどこでも使用できます」。

欠點(diǎn):

見(jiàn)た目や操作感はターゲット プラットフォームによって異なります。

一部のプラットフォームには、Windows や Mac (初期) ほど豊富なインターフェイス コンポーネントがありません。したがって、AWTの設(shè)計(jì)作業(yè)は「最小公倍數(shù)」に限定されます。

プラットフォームが異なれば、バグも異なります。

1996 年に、Netscape は別の GUI ライブラリである IFC を作成しました。これは、空白のウィンドウにユーザー インターフェイス コンポーネントを描畫(huà)することで機(jī)能し、ピアは空白のウィンドウの作成と描畫(huà)のみを行う必要があります。 Sun と Netscape は協(xié)力してこのアプローチを完成させ、Swing と呼ばれるユーザー インターフェイス ライブラリを作成しました。これが Swing の誕生です。

しかし、Swing は AWT を完全に置き換えたわけではありません。現(xiàn)在、Java SE 8 にはまだ AWT と Swing の 2 つの関數(shù)クラス ライブラリがあります:

AWT import java.awt (Java はコア パッケージ)

Swing import javax.swing ( javax パッケージ) (機(jī)能拡張パック)

Swing が AWT を完全に置き換えていない理由は、Swing が AWT アーキテクチャに基づいており、Swing はより強(qiáng)力なユーザー インターフェイス コンポーネントのみを提供するためです。 Swing で書(shū)かれたプログラムでも、イベント処理には AWT が必要です。簡(jiǎn)単に言うと、Swing はユーザー インターフェイス クラスであり、AWT はその基礎(chǔ)となるメカニズムです。

グラフィカル ユーザー インターフェイス GUI

2. JFrameフレームワークを作成します

フレームとは、最上位のウィンドウであるフレームを意味し、フレームにコンポーネントを追加できます。ウィンドウを作成するときは、まずフレームを作成する必要があります。

グラフィカル ユーザー インターフェイス GUI

注: JButton、JFrame など、Swing コンポーネント クラスはすべて「J」で始まります。AWT コンポーネントには「J」がありません。 Swing コンポーネントを AWT コンポーネントと一緒に使用すると、視覚的および動(dòng)作上の不一致が生じる可能性があります。

さて、空のフレームを作成しましょう:

package simpleFrame;

//會(huì)用到awt和swing的類,先import。
import java.awt.*;         
import javax.swing.*;

//創(chuàng)建一個(gè)SimpleFrame的類,里面只有一個(gè)main函數(shù),main函數(shù)里有個(gè)事件分派線程。
public class SimpleFrame {
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                JFrame frame = new SizedFrame(); //new一個(gè)SizeFrame對(duì)象給frame變量管理,這便有了框架。SizeFrame是JFrame的子類。
                frame.setTitle("SimpleFrame");   //設(shè)置框架的標(biāo)題.
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //設(shè)定關(guān)閉按鈕。
                frame.setVisible(true);          //設(shè)定框架可見(jiàn)。
            }
        });
    }
}

//其實(shí)到這里為止,我們可以在第12行直接new一個(gè)JFrame交給frame,但是JFrame默認(rèn)框架大小是0×0,沒(méi)什么實(shí)際意義。
//所以我們選擇繼承JFrame做一個(gè)子類起名SizedFrame,在這個(gè)類里做一個(gè)構(gòu)造器來(lái)設(shè)定框架的大小。
class SizedFrame extends JFrame {
    
    //構(gòu)造器
    public SizedFrame() {
        
        //下面四行代碼為獲取你pc屏幕的高度和寬度,交給int變量screenHeight和screenWidth。
        Toolkit kit = Toolkit.getDefaultToolkit();
        Dimension screenSize = kit.getScreenSize();
        int screenHeight = screenSize.height;
        int screenWidth = screenSize.width;
        
        //setSize方法由父類Component類(GUI對(duì)象的祖先)繼承而來(lái)。設(shè)定框架長(zhǎng)寬都為屏幕的1/2.
        //setLocationByPlatform由Window類(Frame類的父類)繼承而來(lái)。由平臺(tái)(操作系統(tǒng))來(lái)選擇一個(gè)合適的顯示位置。
        setSize(screenWidth/2,screenHeight/2);
        setLocationByPlatform(true);
        
        //setIconImage方法由Frame類繼承而來(lái),設(shè)置框架圖標(biāo)。
        Image img = new ImageIcon("icon.gif").getImage();
        setIconImage(img);
        
        //當(dāng)然,事件分派線程里的設(shè)定標(biāo)題、設(shè)定關(guān)閉按鈕、和設(shè)定框架可見(jiàn)操作,也可以放在構(gòu)造器里來(lái)做。
    }
}

Windows 10 で実行:

グラフィカル ユーザー インターフェイス GUI

3. コンポーネント JComponent をフレームに追加します

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫(xiě)真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)