1. showMessageDialog參數說明

JOptionPane.showMessageDialog(Component parent, Object message, String title, int messageType , Icon icon);

參數說明:

Component parent:父容器元件,例如JFrameJAppletJDialog

Object message:放置要顯示的訊息

String title:放置要顯示的訊息標題,如無設置,其預設為[訊息]

int messageType:設定要顯示的訊息類型,如無設置,其預設為INFORMATION(即圖示為 i)

Icon icon:若傳入一個IconImageIcon物件,則可以自訂圖示

 

2. showMessageDialog範例

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

1. JOptionPane彈跳視窗之類型

    (1) showMessageDialog(訊息框):用於顯示訊息,例如檔案不存在、帳號密碼錯誤等,其只有一個確認按鈕,以關閉該訊息框。

    (2) showConfirmDialog(確認框):用於確認問題,例如刪除檔案、關閉視窗等,其最少有Yes/No二個按鈕,不過也可顯示三個按鈕Yes/No/Cancel

    (3) showInputDialog(輸入框):用於提供使用者輸入所需的資訊,例如帳號密碼、搜尋關鍵字等,因此其最少具有一個TextField(文字方塊)/ComboBox(下拉式選單)OK按鈕,或多加Cancel按鈕。

    (4) showOptionDialog(選項框):顯示選項並用以確認資訊,其為確認框的變形,只是多了兩個參數,且只有一個方法,並無多載。另外,其可透過傳入陣列之內容,以自訂選項按鈕上的文字,而非只有Yes/No/Cancel/OK

 

2. Option Type彈跳視窗之選項按鈕類型

    (1) JOptionPane.DEFAULT_OPTION (= -1)

    (2) JOptionPane.YES_NO_OPTION (=0)

    (3) JOptionPane.YES_NO_CANCEL_OPTION (=1)

    (4) JOptionPane.OK_CANCEL_OPTION (=2)

 

3. Message Type彈跳視窗之訊息類型(其為顯示在左側的圖示)

    (1) JOptionPane.ERROR_MESSAGE (=0)X

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

本範例應用在須將系統常駐,但總不能將其縮小在工作列上之情況,所以利用SystemTrayTrayIconPopupMenuMenuItemMenu...等元件,以及各種監聽事件(ActionListenerItemListenerWindowListener),以完成視窗縮小至系統托盤上之效果,並給予範例以供各位學習。

 

系統托盤預設位於工作列的右方、螢幕的右下角。一般的程式在按下視窗縮小鍵之後,會縮小並以圖像形式出現於工作列上。但有些程式卻將圖像縮放於系統托盤內,有如常駐程式般,方便使用者點選使用,如下圖。

WindowIconifiedDemo_5.png

 

  1. 縮小JFrame時縮小至系統托盤上之程式範例

WindowClosingDemo_1.png

文章標籤

Elsa 發表在 痞客邦 留言(1) 人氣()

JProgressBar大部分應用在檔案的下載、程式的登入等地方,所以使用的頻率也算高,在此簡單的介紹JProgressBar之基本使用方法,並給予範例以供各位學習。 

1.JProgressBar常用的方法

   (1) setOrientation(int newOrientation):設置進度條的方向,如:JProgressBar.VERTICAL、JProgressBar.HORIZONTAL

   (2) setForeground(Color fg):設置進度條的前景顏色(即會動的部分)

   (3) setBackground(Color bg):設置進度條的背景顏色

   (4) setMinimum(int n):設置進度條的最小值

   (5) setMaximum(int n):設置進度條的最大值

   (6) setStringPainted(boolean b):在進度條中設置百分比

   (7) setBorderPainted(boolean b):設置是否繪製進度條的邊框

   (8) setIndeterminate(boolean b):如無法確定進度的情況時,則可透過設置該方法來一直run進度條

   (9) setValue(int value):改變進度條的完成進度

 

2.範例:在此提供一介面讓使用者自行勾選是否要繪製進度條的邊框、是否為無法確定進度等情況,以呈現出JProgressBar基本之使用功能。

 

Elsa 發表在 痞客邦 留言(0) 人氣()

1.          executeUpdate

executeUpdate方法用於執行INSERTUPDATEDELETE語法,以及 SQL DDL(資料定義語言)語句,例如CREATE TABLEDROP TABLE。其返回值為一個整數,即受影響的行數/更新計數,而 CREATE TABLEDROP TABLE 等不操作行的語法,返回值總為零 (0)

語法範例:

String connectionString = "jdbc:sqlite:Demo.db";

Connection  cnnectionDb = DriverManager.getConnection(connectionString);

String sql = "CREATE TABLE login_info (" +

"        Username VARCHAR(255) PRIMARY KEY NOT NULL, " +

         "        Password VARCHAR(255), " +

         "        LoginTime DATETIME, " +

         "        AutoLogin BOOLEAN); ";

Statement stat = cnnectionDb.createStatement();

stat.executeUpdate(sql);

 

2.          executeQuery

Elsa 發表在 痞客邦 留言(0) 人氣()

1.          拿取系統現在日期:

l   SQLite

SELECT date('now')

date('now')

2015-01-02

l   Oracle

SELECT TO_CHAR(SYSDATE, 'YYYY/MM/DD') FROM dual

TO_CHAR(SYSDATE, 'YYYY/MM/DD')

2015/01/02

 

2.          拿取系統現在時間:

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

Table欄位說明:

Table NameSOLD_RECORD

   Name                Type 

DATE                        CHAR(10)<or DATE>

SALES_AMT             NUMBER(10)

 

範例:

運算X公司之2015/01/01~2015/12/31交易日期(DATE)的每月/日實收銷售金額為何?

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

範例程式的目的:

1. 透過Handler實現線程間的通訊。

2. 在主線程當中實現HandlerhandleMessage()方法。

3. Worker Thread當中透過Handler發送消息。

 

範例程式的主題:

利用Worker Thread發送消息給Main Thread,即使用者按下發送按鈕後,模擬向網路伺服器獲取數據的休眠2秒鐘,之後再將獲取到的數據更新到使用者觀看的介面上(即TextView)。

 

程式碼

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

什麼是HandlerLooper

1. HandlerLooperMessageQueue是組成「消息傳遞機制」的重要原素。

2. Handler是一個類,其負責把消息物件「加到」消息隊列(其又可稱為訊息佇列MessageQueue,為採用先進先出法的隧道)裡。

3. Looper負責不斷地將消息物件從消息隊列中「取出」來。而如果消息隊列中無消息物件的話,則Looper會造成阻塞,即等待的狀態

 

HandlerLooperMessageQueue的基本原理

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()

回顧Java當中的線程概念

1. 線程的二種實現方式:繼承Thread(其代表的是線程)或實現Runnable接口(其只僅代表線程體,即線程需執行的程式碼)

2. 線程的生命週期:創建線程à調用線程start的方法à線程進入就緒狀態à搶到CPU就可進入到運行狀態à如被其它的線程搶走CPU或進入阻塞狀態(sleep方法),則進入就緒狀態à一直反覆,直到線程體執行完,則該線程就算是執行完了à線程進入死亡狀態。

※當一個線程進入死亡狀態的話,就不可能再復活了。

3. 多線程同步(即同步代碼塊),用於解決多線程同時執行與使用同一資源所可能會產生的誤差之問題。而同步時,只允許一個線程來使用該資源。

 

Android當中的線程介紹 - Main Thread(/UI線程)Worker Thread(其它線程)

文章標籤

Elsa 發表在 痞客邦 留言(0) 人氣()