本文目錄一覽:
- 1、如何設置JAVA中對話框的文字字體,顏色
- 2、Java幾種消息對話框
- 3、java中程序輸入輸出以對話框的形式表現怎麼做?
- 4、如何用java彈出自己編輯的對話框
- 5、Java三個對話框的區別
- 6、java怎麼創建消息對話框
如何設置JAVA中對話框的文字字體,顏色
關於設置對話框的背景顏色,和設置控件的字體顏色或背景顏色:
首先要為對話框添加消息映射,主要是:
BEGIN_MESSAGE_MAP(CXXXDlg, CDialog)
ON_WM_ERASEBKGND()//背景色
ON_WM_CTLCOLOR()//設置文本等控件相關顏色
END_MESSAGE_MAP()
然後在相關代碼區域添加代碼:
//背景色
BOOL CXXXDlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息處理程序代碼和/或調用默認值
//背景色
BOOL retValue= CDialog::OnEraseBkgnd(pDC);
CRect rc;
GetClientRect(rc);
pDC-FillSolidRect(rc,RGB(230,240,250));
return retValue;
}
// 除按紐之外的其他控件,字體顏色、字體背景顏色、控件背景顏色等。
HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CBkDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: 在此更改DC 的任何屬性
//對除了按鈕外的其他控件有效
if(pWnd-GetDlgCtrlID() == IDC_STATIC_TEXT )//關聯控件ID
{
//設置字體顏色
pDC-SetTextColor(RGB(200,100,80));
//設置文本背景顏色
pDC-SetBkColor(RGB(230,240,250));
//設置控件背景顏色
hbr = ::CreateSolidBrush(RGB(230,240,250));
return hbr;
}
// TODO: 如果默認的不是所需畫筆,則返回另一個畫筆
return hbr;
}
Java幾種消息對話框
Java中幾種常見的消息對話框
1、JOptionPane.ERROR_MESSAGE:顯示向用戶表明錯誤的對話框
對應圖標
2、JOptionPane.INFORMATION_MESSAGE:顯示向用戶傳達指示性信息的對話框;用戶可以僅取消該對話框
對應圖標
3、JOptionPane.WARNING_MESSAGE:顯示警告的對話框,說明某個潛在的問題
對應圖標
4、JOptionPane.QUESTION_MESSAGE:顯示向用戶提出問題的對話框。該對話框通常要求用戶響應,諸如單擊Yes或者No按鈕
對應圖標
5、JOptionPane.PLAIN_MESSAGE:顯示只有消息而沒有圖標的對話框
沒有圖標
java中程序輸入輸出以對話框的形式表現怎麼做?
!doctype html
html
head
meta charset=”UTF-8″
titleDocument/title
/head
body
button onclick=”mal()”第一種:alert/button
button onclick=”mpro()”第二種:prompt/button
button onclick=”mcon()”第三種:confirm/button
script
function mal(){
alert(‘這是一個普通的提示框’);
}
function mpro(){
var val = prompt(‘這是一個可輸入的提示框’,’這個參數為輸入框默認值,可以不填哦’);
//prompt會把輸入框的值返回給你
}
function mcon(){
var boo = confirm(‘這是一個可選擇的提示框,3種提示方式,學會了嗎?’)
//confirm 會返回你選擇的選項,然後可以依據選擇執行邏輯
if(boo){
alert(‘學會了,真聰明’);
}else{
alert(‘再來一遍吧’)
}
}
/script
/body
/html
如何用java彈出自己編輯的對話框
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class showMessage extends JFrame{
public showMessage(){
Container c =this.getContentPane();
JButton jb = new JButton(“點我出現message”);
c.add(jb,BorderLayout.NORTH);
setSize(100, 80);
setVisible(true);
jb.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(null, “沒錯,我就是神奇的Message!”);
}
});
}
public static void main(String[] args) {
new showMessage();
}
}
Java三個對話框的區別
包含的功能不同,而且有四個對話框。
ConfirmDialog的功能是確認對話框,提出問題,然後由用戶自己來確認按 Yes 或 No 按鈕,InputDialog的功能是提示輸入文本,MessageDialog的功能顯示信息,OptionDialog的功能是組合其它三個對話框類型。
這四個對話框可以採用showXXXDialog來顯示,如showConfirmDialog顯示確認對話框, showInputDialog顯示輸入文本對話框,showMessageDialog顯示信息對話框,showOptionDialog(顯示選擇性的對話框。
java怎麼創建消息對話框
複雜的對話消息框可以參考JDialog
說明: JDialog的寫法和JFrame基本類似. 可以自由添加組件等,代碼量偏多.
簡單的消息對話框可以使用JOptionPane
說明: 功能較少, 可拓展性不強,但是代碼非常簡潔. 適合大多數的應用場景.
效果圖
舉例:
public class Demo {
public static void main(String[] args) {
JOptionPane.showMessageDialog(null, “提示:今天天氣不錯喲~”);
JOptionPane.showMessageDialog(null, “提示: 6/0出錯, 被除數不能為0! “, “警告”,JOptionPane.ERROR_MESSAGE);
}
}
關於觸發的舉例
效果圖
參考代碼
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//該窗口繼承自JFrame.
public class DemoFrame extends JFrame implements ActionListener{
JTextField jtf;
JButton jb;
public DemoFrame() {
jtf = new JTextField(8);
jtf.setText(“Hello ~”);
jb = new JButton(“顯示文本框的內容”);
jb.addActionListener(this);
JPanel jp = new JPanel();
jp.add(jtf);
jp.add(jb);
add(jp);
setTitle(“窗口”);// 窗口標題
setSize(380, 185);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 通常添加這行代碼,點擊窗口右下角的關閉時會結束程序
setVisible(true);
}
// main方法
public static void main(String[] args) {
new DemoFrame();
}
@Override
public void actionPerformed(ActionEvent e) {
JButton jb1 = (JButton) e.getSource();
if(jb==jb1) {
JOptionPane.showMessageDialog(null, “文本框的內容是:”+jtf.getText());
}
}
}
拓展:
更多的關於JDialog和JOptionPane兩個組件的使用方法, 可以查看java API文檔
建議經常查看java的 API文檔, 網上有很多的中文版. 不熟悉的類和方法,就看看, 是學習的利器~
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/286322.html