成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

java流布局代碼 流動(dòng)布局java

一道關(guān)于流式布局管理器的JAVA問(wèn)題

你為什么非用流失布局管理器,JFrame的默認(rèn)容器可以通過(guò)getContentPane()方法獲取,通過(guò)paint方法重繪該容器,如何再添加其他組件呢。JFrame的默認(rèn)管理器為BorderLayout布局管理器。

從網(wǎng)站建設(shè)到定制行業(yè)解決方案,為提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)服務(wù)體系,各種行業(yè)企業(yè)客戶提供網(wǎng)站建設(shè)解決方案,助力業(yè)務(wù)快速發(fā)展。創(chuàng)新互聯(lián)公司將不斷加快創(chuàng)新步伐,提供優(yōu)質(zhì)的建站服務(wù)。

我的思路是:可以在JPanel繪圖,然后把JPanel容器添加到JFrame容器面板中。代碼如下。

public class first4 extends JFrame{

public first4() {

JPanel p1 = new firstPanel();

JPanel p2 = new JPanel();

JLabel label = new JLabel("哈哈");

JButton button = new JButton("提交");

p2.add(label);

p2.add(button);

this.getContentPane().add(p1);

this.getContentPane().add(p2,BorderLayout.SOUTH);

this.setSize(800,400);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {

new first4();

}

}

class firstPanel extends JPanel{

String s = "歡迎進(jìn)入";

public void paint(Graphics g) {

g.setColor(new Color(130, 135, 205));

g.drawLine(200, 160, 340, 160);

g.drawLine(420, 160, 560, 160);

g.drawLine(250, 200, 246, 218);

g.drawLine(270, 200, 260, 240);

g.drawLine(510, 200, 514, 218);

g.drawLine(490, 200, 500, 240);

g.drawRoundRect(345, 220, 70, 50, 30, 20);

g.setColor(Color.RED);

g.setFont(new Font("Dialog", Font.ITALIC + Font.BOLD, 40));

g.drawString(s, 300, 60);

g.setColor(Color.RED);

}

}

java卡片布局show的使用。下面代碼中LayoutDemo中“日記本”按鈕顯示TestFlowLayoutone 代碼

卡片布局里面,好像只有一個(gè)布局。

另外對(duì)象的比較,不可以簡(jiǎn)單地使用=,要使用對(duì)象.equals(object)

代碼是精簡(jiǎn)過(guò)的,最大的區(qū)別在圖片中代碼的30幾行、60幾行,,,,,把內(nèi)部類,放回到外面,一樣使用的。

java東西南北中布局代碼

FlowLayout 流式布局,從左到右,如果到邊界就換行再?gòu)淖蟮接摇?/p>

BorderLayout 邊界布局(默認(rèn)布局方式),按東西南北中五個(gè)方向來(lái)布局,默認(rèn)是中。后設(shè)置在同樣位置的控件會(huì)覆蓋之前的控件。

GridLayout 網(wǎng)格布局,將容器劃分成若干行列的網(wǎng)格,從左到右,然后從上到下。每個(gè)控件的大小相同。

Java 用戶界面設(shè)計(jì) 求界面代碼

一: 首先弄清題目的意思

A.需要的主要組件列表:

1. ?創(chuàng)建一個(gè)窗口,窗口標(biāo)題叫Information

2. ?3個(gè)標(biāo)簽, 用于顯示文字 Name Number Class

3. ?3個(gè)文本框, 用于填寫信息

4. ?1個(gè)按鈕, ?文字是確認(rèn)

5. ?1個(gè)文本域

B.業(yè)務(wù)邏輯

1. 當(dāng)點(diǎn)擊按鈕確認(rèn)的時(shí)候, 把 文本框的信息顯示到文本域

C.設(shè)計(jì)的主要技術(shù)

JLabel , JButton, JTextField ...等, 都是swing的組件 , ?所以應(yīng)該使用swing進(jìn)行創(chuàng)建

二: ?確定使用的布局

swing雖然重寫了大部分的組件, 但是布局, 依舊沿襲awt技術(shù)

分析圖片上的布局:

至少有2種方法可以實(shí)現(xiàn),?

方法一: 絕對(duì)布局 , 優(yōu)點(diǎn): ?配合可視化GUI拖曳, 可以完美的實(shí)現(xiàn)圖上的組件的位置

但是缺點(diǎn)也是致命的, 不同的操作系統(tǒng)平臺(tái)下, 可能會(huì)出現(xiàn)位置的移動(dòng),

只適合開發(fā)平臺(tái), 移植效果差 . ?所以不推薦使用

方法二: 靈活的表格布局, 配合流式布局 , 所有操作系統(tǒng)下,顯示效果都比較統(tǒng)一.?

三: 效果圖

四: 參考代碼

import?java.awt.*;

import?java.awt.event.*;

import?javax.swing.*;

public?class?FrameDemo?extends?JFrame?{

//申明需要的組件

private?final?JTextField?jtf1,jtf2,jtf3;

private?final?JTextArea?jta;

public?FrameDemo()?{

setTitle("Information");//設(shè)置窗口標(biāo)題

setSize(320,?360);//設(shè)置窗口大小

setLocationRelativeTo(null);//設(shè)置窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);//設(shè)置關(guān)閉時(shí)退出虛擬機(jī)

getContentPane().setLayout(new?FlowLayout());//設(shè)置窗口布局為流式布局

JPanel?jp?=?new?JPanel(new?GridLayout(4,?2));//設(shè)置jp面板為表格布局4行2列

//第一行

JPanel?jp01?=?new?JPanel();

JLabel?jl1?=?new?JLabel("Name:");

jp01.add(jl1);

JPanel?jp1?=?new?JPanel();

jtf1?=?new?JTextField(8);

jp1.add(jtf1);

//第二行

JPanel?jp02?=?new?JPanel();

JLabel?jl2?=?new?JLabel("Number:");

jp02.add(jl2);

JPanel?jp2?=?new?JPanel();

jtf2?=?new?JTextField(8);

jp2.add(jtf2);

//第三行

JPanel?jp03?=?new?JPanel();

JLabel?jl3?=?new?JLabel("Class:");

jp03.add(jl3);

JPanel?jp3?=?new?JPanel();

jtf3?=?new?JTextField(8);

jp3.add(jtf3);

//第四行

JPanel?jp04?=?new?JPanel();

JLabel?jl4?=?new?JLabel("");

jp04.add(jl4);

JPanel?jp4?=?new?JPanel();

JButton?jb?=?new?JButton("確認(rèn)");

jp4.add(jb);

jp.add(jp01);

jp.add(jp1);

jp.add(jp02);

jp.add(jp2);

jp.add(jp03);

jp.add(jp3);

jp.add(jp04);

jp.add(jp4);

getContentPane().add(jp);

jta?=?new?JTextArea();

jta.setColumns(20);//設(shè)置文本域的大小

jta.setEditable(false);//設(shè)置文本域不可編輯

jta.setBackground(jp.getBackground());//設(shè)置文本域的背景色和面板一樣

getContentPane().add(jta);

jb.addActionListener(new?ActionListener()?{//給按鈕添加事件

public?void?actionPerformed(ActionEvent?e)?{//點(diǎn)擊按鈕,顯示信息到文本域

String?name?=?jtf1.getText();

String?number?=?jtf2.getText();

String?clazz?=?jtf3.getText();

jta.setText("You?name?is?"+name+"?number?is?"+number+"?class?is?"+clazz);

}

});

}

public?static?void?main(String[]?args)?{

new?FrameDemo().setVisible(true);//創(chuàng)建窗口,被設(shè)置為可見

}

}

五: 拓展

雖然圖形界面的實(shí)現(xiàn)方法是多樣的, ?我們一定要根據(jù)具體情況, 選擇一個(gè)比較優(yōu)化的 合理的, 符合業(yè)務(wù)邏輯的實(shí)現(xiàn)方法

名稱欄目:java流布局代碼 流動(dòng)布局java
網(wǎng)址分享:http://jinyejixie.com/article24/dochdje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、商城網(wǎng)站、網(wǎng)站營(yíng)銷、外貿(mào)建站、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)
德阳市| 永吉县| 苍溪县| 罗平县| 郯城县| 吴川市| 全椒县| 中方县| 黎川县| 镇安县| 海晏县| 英德市| 泰顺县| 磐石市| 盐津县| 林甸县| 略阳县| 焦作市| 贵州省| 报价| 临颍县| 泗阳县| 砚山县| 五台县| 获嘉县| 珠海市| 灵武市| 西乌| 萝北县| 潮州市| 浠水县| 正阳县| 沁水县| 阿巴嘎旗| 齐河县| 鱼台县| 海丰县| 莱芜市| 永春县| 泰来县| 镇巴县|