蘇州培訓(xùn)網(wǎng) > 蘇州JAVA培訓(xùn)機(jī)構(gòu) > 蘇州其然軟件開發(fā)培訓(xùn)
首頁 培訓(xùn)網(wǎng) 最新資訊 熱門問答

蘇州其然軟件開發(fā)培訓(xùn)

免費(fèi)試聽

您當(dāng)前的位置: 蘇州IT認(rèn)證培訓(xùn) > 蘇州JAVA培訓(xùn) > 張家港java程序員培訓(xùn)價(jià)格

張家港java程序員培訓(xùn)價(jià)格_JAVA培訓(xùn)

¥詳詢

班制:周末班

蘇州其然軟件開發(fā)
上課(咨詢)地址:蘇州市昆山市震川西路111號(hào)名仕大廈
報(bào)名咨詢 預(yù)約試聽
課程介紹
張家港java程序員培訓(xùn)價(jià)格
其然IT 教育環(huán)境

張家港java程序員培訓(xùn)價(jià)格

張家港java程序員培訓(xùn)價(jià)格

Java培訓(xùn)Java與自學(xué)Java的差距

張家港java程序員培訓(xùn)價(jià)格

培訓(xùn)Java與自學(xué)Java的差距

我以前也是自學(xué)Java,在一家公司跟著別人學(xué),以前是別人眼中的菜鳥,現(xiàn) 在是別人眼中的大神,Java很簡單的,貴在堅(jiān)持和多練,沒必要花那培訓(xùn)錢。如果真的要去學(xué)的話,

選擇Java培訓(xùn)機(jī)構(gòu)要注意這兩點(diǎn)基本上就能避免一些坑:

1. 老師沒有正經(jīng)公司工作經(jīng)歷,或者沒有已經(jīng)在線上正常運(yùn)轉(zhuǎn)的產(chǎn)品。一 些所謂培訓(xùn)班的老師水平往往比較一般,甚至還有培訓(xùn)出來后又接著培訓(xùn)別人的。

2、是不是會(huì)承諾幫你找到工作,要找到好的工作,不是靠別人給你保證的 ,還是要靠自己提升能力。

建議多自己學(xué)習(xí)加上找些好的代碼主動(dòng)學(xué)習(xí)。例如github,多練習(xí)網(wǎng)上很多 網(wǎng)站里真正好的代碼。作為Java工程師,可以多看看spring文檔,看看很多已經(jīng)成熟的框架,深入去體會(huì)。另外,學(xué)軟件等等**好還是自己多學(xué),找點(diǎn) 視頻教程之類,也省點(diǎn)錢。

數(shù)據(jù)庫關(guān)鍵技術(shù)

張家港java程序員培訓(xùn)價(jià)格

.數(shù)據(jù)庫關(guān)鍵技術(shù)

  • 01Mysql 基礎(chǔ)

    • 1.Mysql的安裝和使用

    • 2.圖解Mysql程序結(jié)構(gòu)

    • 3.Mysql服務(wù)器的配置

    • 4.Mysql 客戶端使用

    • 5.用戶權(quán)限管理

    • 6.Mysql數(shù)據(jù)庫的使用

  • 02SQL基礎(chǔ)

    • 1.SQL語句的三種類型

    • 2.DML、DDL、DCL的應(yīng)用

    • 3.數(shù)據(jù)處理

    • 4.子查詢

    • 5.創(chuàng)建和管理表

    • 6.約束與分頁

  • 03JDBC

    • 1.JDBC概述

    • 2.獲取數(shù)據(jù)庫連接

    • 3.數(shù)據(jù)庫連接池C3P0 與 DBCP

    • 4.使用JDBC 完成數(shù)據(jù)庫DML操作

    • 5.大數(shù)據(jù)的操作

    • 6.批量處理與元數(shù)據(jù)

  • 04DBUtils

    • 1.使用QueryRunner

    • 2.可插拔式結(jié)果集處理

    • 3.批量處理

    • 4.大數(shù)據(jù)結(jié)果集處理

    • 5.自定義結(jié)果集處理

    • 6.利用DBUtils編寫通用 DAO

qml布局-描點(diǎn)布局anchors


>

上一章我們介紹了 QML 中用于定位的幾種元素,被稱為定位器。除了定位器,QML 還提供了另外一種用于布局的機(jī)制。我們將這種機(jī)制成為錨點(diǎn)(anchor)。錨點(diǎn)允許我們靈活地設(shè)置兩個(gè)元素的相對(duì)位置。它使兩個(gè)元素之間形成一種類似于錨的關(guān)系,也就是兩個(gè)元素之間形成一個(gè)固定點(diǎn)。錨點(diǎn)的行為類似于一種鏈接,它要比單純地計(jì)算坐標(biāo)改變更強(qiáng)。由于錨點(diǎn)描述的是相對(duì)位置,所以在使用錨點(diǎn)時(shí),我們必須指定兩個(gè)元素,聲明其中一個(gè)元素相對(duì)于另外一個(gè)元素。錨點(diǎn)是Item元素的基本屬性之一,因而適用于所有 QML 可視元素。

一個(gè)元素有 6 個(gè)主要的錨點(diǎn)的定位線,如下圖所示: QML 錨點(diǎn) 這 6 個(gè)定位線分別是:top、bottom、left、right、horizontalCenter和verticalCenter。對(duì)于Text元素,還有一個(gè)baseline錨點(diǎn)。每一個(gè)錨點(diǎn)定位線都可以結(jié)合一個(gè)偏移的數(shù)值。其中,top、bottom、left和right稱為外邊框;horizontalCenter、verticalCenter和baseline稱為偏移量。

下面,我們使用例子來說明這些錨點(diǎn)的使用。首先,我們需要重新定義一下上一章使用過的BlueRectangle組件: BlueRectangle import QtQuick 2.0

Rectangle { width: 48 height: 48 color: “blue” border.color: Qt.lighter(color)

MouseArea { anchors.fill: parent drag.target: parent }

} 1 2 3 4 5 6 7 8 9 10 11 12 13

import QtQuick 2.0

Rectangle { width: 48 height: 48 color: “blue” border.color: Qt.lighter(color)

MouseArea { anchors.fill: parent drag.target: parent }

}

簡單來說,我們在BlueRectangle**后增加了一個(gè)MouseArea組件。前面的章節(jié)中,我們簡單使用了這個(gè)組件。顧名思義,這是一個(gè)用于處理鼠標(biāo)事件的組件。之前我們使用了它處理鼠標(biāo)點(diǎn)擊事件。這里,我們使用了其拖動(dòng)事件。anchors.fill: parent一行的含義馬上就會(huì)解釋;drag.target: parent則說明拖動(dòng)目標(biāo)是parent。我們的拖動(dòng)對(duì)象是MouseArea的父組件,也就是BlueRectangle組件。

接下來看**個(gè)例子:

QML anchors.fill

代碼如下: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 12 anchors.fill: parent anchors.margins: 8 } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 12 anchors.fill: parent anchors.margins: 8 } }

}

在這個(gè)例子中,我們使用anchors.fill設(shè)置內(nèi)部藍(lán)色矩形的錨點(diǎn)為填充(fill),填充的目的對(duì)象是parent;填充邊距是 8px。注意,盡管我們設(shè)置了藍(lán)色矩形寬度為 12px,但是因?yàn)殄^點(diǎn)的優(yōu)先級(jí)要高于寬度屬性設(shè)置,所以藍(lán)色矩形的實(shí)際寬度是 100px – 8px – 8px = 84px。

第二個(gè)例子:

QML anchors.left

代碼如下: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 y: 8 anchors.left: parent.left anchors.leftMargin: 8 } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 y: 8 anchors.left: parent.left anchors.leftMargin: 8 } }

}

這次,我們使用anchors.left設(shè)置內(nèi)部藍(lán)色矩形的錨點(diǎn)為父組件的左邊線(parent.left);左邊距是 8px。另外,我們可以試著拖動(dòng)藍(lán)色矩形,看它的移動(dòng)方式。在我們拖動(dòng)時(shí),藍(lán)色矩形只能沿著距離父組件左邊 8px 的位置上下移動(dòng),這是由于我們設(shè)置了錨點(diǎn)的緣故。正如我們前面提到過的,錨點(diǎn)要比單純地計(jì)算坐標(biāo)改變的效果更強(qiáng),更優(yōu)先。

第三個(gè)例子: QML anchors.left parent.right 代碼如下: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.left: parent.right } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.left: parent.right } }

}

這里,我們修改代碼為anchors.left: parent.right,也就是將組件錨點(diǎn)的左邊線設(shè)置為父組件的右邊線。效果即如上圖所示。當(dāng)我們拖動(dòng)組件時(shí),依然只能上下移動(dòng)。

下一個(gè)例子: QML anchors.horizontalCenter

代碼如下: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { id: blue1 width: 48; height: 24 y: 8 anchors.horizontalCenter: parent.horizontalCenter } BlueRectangle { id: blue2 width: 72; height: 24 anchors.top: blue1.bottom anchors.topMargin: 4 anchors.horizontalCenter: blue1.horizontalCenter } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { id: blue1 width: 48; height: 24 y: 8 anchors.horizontalCenter: parent.horizontalCenter } BlueRectangle { id: blue2 width: 72; height: 24 anchors.top: blue1.bottom anchors.topMargin: 4 anchors.horizontalCenter: blue1.horizontalCenter } }

}

這算是一個(gè)稍微復(fù)雜的例子。這里有兩個(gè)藍(lán)色矩形:blue1和blue2。blue1的錨點(diǎn)水平中心線設(shè)置為父組件的水平中心;blue2的錨點(diǎn)上邊線相對(duì)于blue1的底部,其中邊距為 4px,另外,我們還增加了一個(gè)水平中線為blue1的水平中線。這樣,blue1相對(duì)于父組件,blue2相對(duì)于blue1,這樣便決定了三者之間的相對(duì)關(guān)系。當(dāng)我們拖動(dòng)藍(lán)色矩形時(shí)可以發(fā)現(xiàn),blue1和blue2的相對(duì)位置始終不變,因?yàn)槲覀円呀?jīng)明確指定了這種相對(duì)位置,而二者可以像一個(gè)整體似的同時(shí)上下移動(dòng)(因?yàn)槲覀儧]有指定其中任何一個(gè)的上下邊距與父組件的關(guān)系)。

另外一個(gè)例子: QML anchors.centerIn 代碼如下所示: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.centerIn: parent } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.centerIn: parent } }

}

與**個(gè)例子類似,我們使用的是anchors.centerIn: parent將藍(lán)色矩形的中心固定在父組件的中心。由于我們已經(jīng)指明是中心,所以也不能拖動(dòng)這個(gè)藍(lán)色矩形。

**后一個(gè)例子: QML anchors.horizontalCenter verticalCenter

代碼如下: import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenterOffset: -12 anchors.verticalCenter: parent.verticalCenter } }

} 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

import QtQuick 2.0

Rectangle { id: root width: 220 height: 220 color: “black”

GreenRectangle { x: 10 y: 10 width: 100 height: 100 BlueRectangle { width: 48 anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenterOffset: -12 anchors.verticalCenter: parent.verticalCenter } }

}

上一個(gè)例子中,anchors.centerIn: parent可以看作等價(jià)于anchors.horizontalCenter: parent.horizontalCenter和anchors.verticalCenter: parent.verticalCenter。而這里,我們設(shè)置了anchors.horizontalCenterOffset為 -12,也就是向左偏移 12px。當(dāng)然,我們也可以在anchors.centerIn: parent的基礎(chǔ)上增加anchors.horizontalCenterOffset的值,二者是等價(jià)的。由于我們在這里指定的相對(duì)位置已經(jīng)很明確,拖動(dòng)也是無效的。

至此,我們簡單介紹了 QML 中定位器和錨點(diǎn)的概念??雌饋磉@些元素和機(jī)制都很簡單,但是,**有機(jī)地結(jié)合,足以靈活應(yīng)對(duì)更復(fù)雜的場景。我們所要做的就是不斷熟悉、深化對(duì)這些定位布局技術(shù)的理解。


相關(guān)推薦:


蘇州JAVA培訓(xùn)   蘇州JAVA培訓(xùn)班   蘇州JAVA培訓(xùn)機(jī)構(gòu)

體驗(yàn)課預(yù)約試聽

倒計(jì)時(shí)

12:00:00

課程熱線:

在線咨詢

客服在線時(shí)間:早上9點(diǎn)~下午6點(diǎn),其他時(shí)間請(qǐng)?jiān)诰€預(yù)約報(bào)名或留言,謝謝!

蘇州JAVA

免費(fèi)體驗(yàn)課開班倒計(jì)時(shí)

11: 41: 09

稍后會(huì)有專業(yè)老師給您回電,請(qǐng)保持電話暢通

咨詢電話:

選課

推薦機(jī)構(gòu) 全國分站 更多課程

本周僅剩 個(gè)試聽名額

請(qǐng)鍵入信息,稍后系統(tǒng)將會(huì)把領(lǐng)獎(jiǎng)短信發(fā)至您的手機(jī)

申請(qǐng)?jiān)嚶犆~

QQ:
加盟合作:0755-83654572