คำอธิบาย
ใช้ chrome.app.window
API เพื่อสร้างหน้าต่าง Windows มีเฟรมเสริมพร้อมแถบชื่อและตัวควบคุมขนาด และจะไม่เชื่อมโยงกับหน้าต่างเบราว์เซอร์ Chrome ใดๆ ดูตัวอย่างสถานะหน้าต่างสำหรับการสาธิตตัวเลือกเหล่านี้
ประเภท
AppWindow
พร็อพเพอร์ตี้
-
contentWindow
หน้าต่าง
"หน้าต่าง" JavaScript สำหรับหน่วยย่อยที่สร้าง
-
id
สตริง
รหัสที่ใช้สร้างหน้าต่าง
-
innerBounds
ตำแหน่ง ขนาด และข้อจำกัดเนื้อหาของหน้าต่าง ซึ่งไม่รวมการตกแต่งหน้าต่าง พร็อพเพอร์ตี้นี้เป็นฟีเจอร์ใหม่ใน Chrome 36
-
outerBounds
ตำแหน่ง ขนาด และข้อจำกัดของหน้าต่าง ซึ่งรวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและกรอบ พร็อพเพอร์ตี้นี้เป็นฟีเจอร์ใหม่ใน Chrome 36
-
clearAttention
เป็นโมฆะ
นำความสนใจไปที่หน้าต่าง
ฟังก์ชัน
clearAttention
มีลักษณะดังนี้() => {...}
-
ปิด
เป็นโมฆะ
ปิดหน้าต่าง
ฟังก์ชัน
close
มีลักษณะดังนี้() => {...}
-
drawAttention
เป็นโมฆะ
ดึงดูดความสนใจไปที่หน้าต่าง
ฟังก์ชัน
drawAttention
มีลักษณะดังนี้() => {...}
-
โฟกัส
เป็นโมฆะ
โฟกัสหน้าต่าง
ฟังก์ชัน
focus
มีลักษณะดังนี้() => {...}
-
เต็มหน้าจอ
เป็นโมฆะ
เปิดหน้าต่างแบบเต็มหน้าจอ
ผู้ใช้สามารถคืนค่าหน้าต่างได้โดยการกด ESC แอปพลิเคชันป้องกันไม่ให้ค้างสถานะเต็มหน้าจอได้เมื่อกด ESC ด้วยการขอสิทธิ์
app.window.fullscreen.overrideEsc
และยกเลิกเหตุการณ์ด้วยการเรียกใช้ .preventDefault() ในเครื่องจัดการคีย์ดาวน์และคีย์อัปดังนี้window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };
โปรดทราบว่า
window.fullscreen()
จะทำให้ทั้งหน้าต่างกลายเป็นแบบเต็มหน้าจอและไม่ต้องใช้ท่าทางสัมผัสของผู้ใช้ นอกจากนี้ยังสามารถใช้ API เต็มหน้าจอ HTML5 เพื่อเข้าสู่โหมดเต็มหน้าจอ (ดูรายละเอียดเพิ่มเติมที่ API ของเว็บ)ฟังก์ชัน
fullscreen
มีลักษณะดังนี้() => {...}
-
getBounds
เป็นโมฆะ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
รับขอบเขตภายในของหน้าต่างเป็นออบเจ็กต์
ContentBounds
ฟังก์ชัน
getBounds
มีลักษณะดังนี้() => {...}
-
returns
-
-
ซ่อน
เป็นโมฆะ
ซ่อนหน้าต่าง ไม่ต้องดำเนินการใดๆ หากหน้าต่างนั้นซ่อนอยู่
ฟังก์ชัน
hide
มีลักษณะดังนี้() => {...}
-
isAlwaysOnTop
เป็นโมฆะ
หน้าต่างอยู่ด้านบนเสมอไหม
ฟังก์ชัน
isAlwaysOnTop
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isFullscreen
เป็นโมฆะ
หน้าต่างเต็มหน้าจอไหม ซึ่งจะเป็นจริงหากมีการสร้างหน้าต่างแบบเต็มหน้าจอหรือกำหนดให้เต็มหน้าจอผ่าน API แบบเต็มหน้าจอของ
AppWindow
หรือ HTML5ฟังก์ชัน
isFullscreen
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isMaximized
เป็นโมฆะ
หน้าต่างขยายใหญ่สุดใช่ไหม
ฟังก์ชัน
isMaximized
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isMinimized
เป็นโมฆะ
หน้าต่างย่อเล็กสุดไหม
ฟังก์ชัน
isMinimized
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
ขยายใหญ่สุด
เป็นโมฆะ
ขยายหน้าต่างให้ใหญ่สุด
ฟังก์ชัน
maximize
มีลักษณะดังนี้() => {...}
-
ย่อเล็กสุด
เป็นโมฆะ
ย่อหน้าต่าง
ฟังก์ชัน
minimize
มีลักษณะดังนี้() => {...}
-
moveTo
เป็นโมฆะ
เลิกใช้งานตั้งแต่ Chrome 43ใช้ขอบเขตนอก
ย้ายหน้าต่างไปยังตำแหน่ง (
left
,top
)ฟังก์ชัน
moveTo
มีลักษณะดังนี้(left: number, top: number) => {...}
-
ซ้าย
ตัวเลข
-
ด้านบน
ตัวเลข
-
-
resizeTo
เป็นโมฆะ
เลิกใช้งานตั้งแต่ Chrome 43ใช้ขอบเขตนอก
ปรับขนาดหน้าต่างเป็นขนาด
width
xheight
พิกเซลฟังก์ชัน
resizeTo
มีลักษณะดังนี้(width: number, height: number) => {...}
-
ความกว้าง
ตัวเลข
-
ส่วนสูง
ตัวเลข
-
-
คืนค่า
เป็นโมฆะ
คืนค่าหน้าต่าง โดยออกจากสถานะขยายใหญ่สุด ย่อเล็กสุด หรือเต็มหน้าจอ
ฟังก์ชัน
restore
มีลักษณะดังนี้() => {...}
-
setAlwaysOnTop
เป็นโมฆะ
ตั้งค่าว่าจะให้หน้าต่างอยู่เหนือหน้าต่างอื่นๆ ส่วนใหญ่หรือไม่ ต้องมีสิทธิ์
alwaysOnTopWindows
ฟังก์ชัน
setAlwaysOnTop
มีลักษณะดังนี้(alwaysOnTop: boolean) => {...}
-
alwaysOnTop
boolean
-
-
setBounds
เป็นโมฆะ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ตั้งค่าขอบเขตภายในของหน้าต่าง
ฟังก์ชัน
setBounds
มีลักษณะดังนี้(bounds: ContentBounds) => {...}
-
ขอบเขต
-
-
setVisibleOnAllWorkspaces
เป็นโมฆะ
กําหนดว่าจะให้หน้าต่างปรากฏในพื้นที่ทํางานทั้งหมดหรือไม่ (สำหรับแพลตฟอร์มที่รองรับการดำเนินการนี้เท่านั้น)
ฟังก์ชัน
setVisibleOnAllWorkspaces
มีลักษณะดังนี้(alwaysVisible: boolean) => {...}
-
alwaysVisible
boolean
-
-
แสดง
เป็นโมฆะ
แสดงหน้าต่าง ไม่ต้องดำเนินการใดๆ หากหน้าต่างปรากฏขึ้นอยู่แล้ว โฟกัสหน้าต่างหากตั้งค่า
focused
เป็น "จริง" หรือละเว้นฟังก์ชัน
show
มีลักษณะดังนี้(focused?: boolean) => {...}
-
มีสมาธิ
บูลีน ไม่บังคับ
-
Bounds
พร็อพเพอร์ตี้
-
ส่วนสูง
ตัวเลข
พร็อพเพอร์ตี้นี้ใช้เพื่ออ่านหรือเขียนความสูงปัจจุบันของเนื้อหาหรือหน้าต่างได้
-
ซ้าย
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนพิกัด X ปัจจุบันของเนื้อหาหรือหน้าต่าง
-
maxHeight
หมายเลข ไม่บังคับ
พร็อพเพอร์ตี้นี้ใช้เพื่ออ่านหรือเขียนความสูงสูงสุดในปัจจุบันของเนื้อหาหรือหน้าต่างได้ ค่า
null
หมายถึง "ไม่ระบุ" -
maxWidth
หมายเลข ไม่บังคับ
พร็อพเพอร์ตี้นี้ใช้เพื่ออ่านหรือเขียนความกว้างสูงสุดปัจจุบันของเนื้อหาหรือหน้าต่างได้ ค่า
null
หมายถึง "ไม่ระบุ" -
minHeight
หมายเลข ไม่บังคับ
พร็อพเพอร์ตี้นี้ใช้เพื่ออ่านหรือเขียนความสูงขั้นต่ำในปัจจุบันของเนื้อหาหรือหน้าต่างได้ ค่า
null
หมายถึง "ไม่ระบุ" -
minWidth
หมายเลข ไม่บังคับ
คุณสมบัตินี้ใช้อ่านหรือเขียนความกว้างขั้นต่ำปัจจุบันของเนื้อหาหรือหน้าต่างได้ ค่า
null
หมายถึง "ไม่ระบุ" -
ด้านบน
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนพิกัด Y ปัจจุบันของเนื้อหาหรือหน้าต่าง
-
ความกว้าง
ตัวเลข
คุณสมบัตินี้ใช้เพื่ออ่านหรือเขียนความกว้างปัจจุบันของเนื้อหาหรือหน้าต่างได้
-
setMaximumSize
เป็นโมฆะ
ตั้งค่าขีดจำกัดขนาดสูงสุดของเนื้อหาหรือหน้าต่าง สามารถกำหนดความกว้างหรือความสูงสูงสุดเป็น
null
เพื่อนำข้อจำกัดออกได้ ค่าundefined
จะไม่มีการเปลี่ยนแปลงข้อจำกัดฟังก์ชัน
setMaximumSize
มีลักษณะดังนี้(maxWidth: number, maxHeight: number) => {...}
-
maxWidth
ตัวเลข
-
maxHeight
ตัวเลข
-
-
setMinimumSize
เป็นโมฆะ
ตั้งค่าข้อจำกัดขนาดขั้นต่ำของเนื้อหาหรือหน้าต่าง สามารถกำหนดความกว้างหรือความสูงขั้นต่ำเป็น
null
เพื่อนำข้อจำกัดออกได้ ค่าundefined
จะไม่มีการเปลี่ยนแปลงข้อจำกัดฟังก์ชัน
setMinimumSize
มีลักษณะดังนี้(minWidth: number, minHeight: number) => {...}
-
minWidth
ตัวเลข
-
minHeight
ตัวเลข
-
-
setPosition
เป็นโมฆะ
กำหนดตำแหน่งด้านซ้ายและด้านบนของเนื้อหาหรือหน้าต่าง
ฟังก์ชัน
setPosition
มีลักษณะดังนี้(left: number, top: number) => {...}
-
ซ้าย
ตัวเลข
-
ด้านบน
ตัวเลข
-
-
setSize
เป็นโมฆะ
กำหนดความกว้างและความสูงของเนื้อหาหรือหน้าต่าง
ฟังก์ชัน
setSize
มีลักษณะดังนี้(width: number, height: number) => {...}
-
ความกว้าง
ตัวเลข
-
ส่วนสูง
ตัวเลข
-
BoundsSpecification
พร็อพเพอร์ตี้
-
ส่วนสูง
หมายเลข ไม่บังคับ
ความสูงของเนื้อหาหรือหน้าต่าง
-
ซ้าย
หมายเลข ไม่บังคับ
พิกัด X ของเนื้อหาหรือหน้าต่าง
-
maxHeight
หมายเลข ไม่บังคับ
ความสูงสูงสุดของเนื้อหาหรือหน้าต่าง
-
maxWidth
หมายเลข ไม่บังคับ
ความกว้างสูงสุดของเนื้อหาหรือหน้าต่าง
-
minHeight
หมายเลข ไม่บังคับ
ความสูงขั้นต่ำของเนื้อหาหรือหน้าต่าง
-
minWidth
หมายเลข ไม่บังคับ
ความกว้างขั้นต่ำของเนื้อหาหรือหน้าต่าง
-
ด้านบน
หมายเลข ไม่บังคับ
พิกัด Y ของเนื้อหาหรือหน้าต่าง
-
ความกว้าง
หมายเลข ไม่บังคับ
ความกว้างของเนื้อหาหรือหน้าต่าง
ContentBounds
พร็อพเพอร์ตี้
-
ส่วนสูง
หมายเลข ไม่บังคับ
-
ซ้าย
หมายเลข ไม่บังคับ
-
ด้านบน
หมายเลข ไม่บังคับ
-
ความกว้าง
หมายเลข ไม่บังคับ
CreateWindowOptions
พร็อพเพอร์ตี้
-
alwaysOnTop
บูลีน ไม่บังคับ
หากจริง หน้าต่างดังกล่าวจะอยู่เหนือหน้าต่างอื่นๆ ส่วนใหญ่ หากมีหน้าต่างประเภทนี้หลายหน้าต่าง หน้าต่างที่โฟกัสอยู่ในปัจจุบันจะอยู่ที่พื้นหน้า ต้องมีสิทธิ์
alwaysOnTopWindows
ค่าเริ่มต้นคือ "เท็จ"เรียกใช้
setAlwaysOnTop()
บนหน้าต่างเพื่อเปลี่ยนพร็อพเพอร์ตี้นี้หลังจากการสร้าง -
ขอบเขต
ContentBounds ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ขนาดและตำแหน่งของเนื้อหาในหน้าต่าง (ไม่รวมแถบชื่อ) หากระบุรหัสไว้ด้วยและเคยแสดงหน้าต่างที่มีรหัสตรงกันมาก่อน ระบบจะใช้ขอบเขตของหน้าต่างที่จดจำไว้แทน
-
มีสมาธิ
บูลีน ไม่บังคับ
หากจริง ระบบจะโฟกัสหน้าต่างขณะสร้าง ค่าเริ่มต้นคือ true
-
สร้างเฟรม
string | FrameOptions ไม่บังคับ
ประเภทเฟรม:
none
หรือchrome
(ค่าเริ่มต้นคือchrome
) สำหรับnone
คุณจะใช้พร็อพเพอร์ตี้ CSS-webkit-app-region
เพื่อใช้ความสามารถในการลากกับหน้าต่างของแอปได้ สามารถใช้-webkit-app-region: drag
เพื่อทำเครื่องหมายบริเวณที่ลากได้ คุณสามารถใช้no-drag
เพื่อปิดใช้รูปแบบนี้ในองค์ประกอบที่ฝังอยู่การใช้
FrameOptions
เป็นฟีเจอร์ใหม่ใน M36 -
บูลีน ไม่บังคับ
หากจริง ระบบจะสร้างหน้าต่างในสถานะที่ซ่อนอยู่ เรียกใช้ show() ในหน้าต่างเพื่อแสดงเมื่อสร้างเรียบร้อยแล้ว ค่าเริ่มต้นคือ "เท็จ"
-
ไอคอน
string ไม่บังคับ
Chrome 54 ขึ้นไปURL ของไอคอนหน้าต่าง หน้าต่างอาจมีไอคอนของตัวเองเมื่อตั้งค่า showInSfloor เป็น "จริง" URL ควรเป็น URL ส่วนกลางหรือภายในเครื่องของส่วนขยาย
-
id
string ไม่บังคับ
รหัสสำหรับระบุหน้าต่าง ระบบจะใช้ค่านี้เพื่อจดจำขนาดและตำแหน่งของหน้าต่าง และคืนค่ารูปทรงเรขาคณิตเมื่อมีการเปิดหน้าต่างที่มีรหัสเดียวกันนั้นในภายหลัง หากมีการสร้างหน้าต่างที่มีรหัสที่กำหนดในขณะที่มีหน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว ระบบจะโฟกัสหน้าต่างที่เปิดอยู่ในปัจจุบันแทนการสร้างหน้าต่างใหม่
-
innerBounds
BoundsSpecification ไม่บังคับ
ใช้ระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของเนื้อหาของหน้าต่าง (ไม่รวมการตกแต่งหน้าต่าง) หากระบุ
id
ด้วยและเคยแสดงหน้าต่างที่มีid
ตรงกันมาก่อน ระบบจะใช้ขอบเขตที่จดจำแทนโปรดทราบว่าระบบปฏิบัติการจะกำหนดระยะห่างจากขอบด้านในและขอบด้านนอก ดังนั้นการตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง
innerBounds
และouterBounds
จะทำให้เกิดข้อผิดพลาดพร็อพเพอร์ตี้นี้เป็นฟีเจอร์ใหม่ใน Chrome 36
-
maxHeight
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ความสูงสูงสุดของหน้าต่าง
-
maxWidth
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ความกว้างสูงสุดของหน้าต่าง
-
minHeight
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ความสูงขั้นต่ำของหน้าต่าง
-
minWidth
หมายเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBound
ความกว้างขั้นต่ำของหน้าต่าง
-
outerBounds
BoundsSpecification ไม่บังคับ
ใช้ระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของหน้าต่าง (รวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและกรอบ) หากระบุ
id
ด้วยและเคยแสดงหน้าต่างที่มีid
ตรงกันมาก่อน ระบบจะใช้ขอบเขตที่จดจำแทนโปรดทราบว่าระบบปฏิบัติการจะกำหนดระยะห่างจากขอบด้านในและขอบด้านนอก ดังนั้นการตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง
innerBounds
และouterBounds
จะทำให้เกิดข้อผิดพลาดพร็อพเพอร์ตี้นี้เป็นฟีเจอร์ใหม่ใน Chrome 36
-
ปรับขนาดได้
บูลีน ไม่บังคับ
หากเป็น "จริง" ผู้ใช้จะปรับขนาดหน้าต่างได้ ค่าเริ่มต้นคือ true
-
showInShelf
บูลีน ไม่บังคับ
Chrome 54 ขึ้นไปหากจริง หน้าต่างจะมีไอคอนชั้นวางของตัวเอง ไม่เช่นนั้นระบบจะจัดกลุ่มหน้าต่างในชั้นวางไว้กับหน้าต่างอื่นๆ ที่เชื่อมโยงกับแอป ค่าเริ่มต้นคือ "เท็จ" หากตั้งค่า showInShelf เป็น true คุณต้องระบุรหัสสำหรับหน้าต่าง
-
Singleton
บูลีน ไม่บังคับ
เลิกใช้งานแล้วระบบไม่รองรับหน้าต่างหลายหน้าต่างที่มีรหัสเดียวกันอีกต่อไป
โดยค่าเริ่มต้น ถ้าคุณระบุรหัสสำหรับหน้าต่างนั้น ระบบจะสร้างหน้าต่างก็ต่อเมื่อยังไม่มีหน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว หากมีหน้าต่างที่มีรหัสเดียวกันอยู่แล้ว หน้าต่างดังกล่าวจะเปิดใช้งานแทน หากต้องการสร้างหน้าต่างหลายหน้าต่างที่มีรหัสเดียวกัน คุณสามารถตั้งค่าคุณสมบัตินี้เป็น false (เท็จ)
-
รัฐ
รัฐ ไม่บังคับ
สถานะเริ่มต้นของหน้าต่าง ซึ่งสามารถสร้างขึ้นแบบเต็มหน้าจออยู่แล้ว ขยายใหญ่สุด หรือย่อเล็กสุด ค่าเริ่มต้นคือ "ปกติ"
-
ประเภท
WindowType ไม่บังคับ
Chrome 45 ขึ้นไป เลิกใช้งานตั้งแต่ Chrome 69หน้าต่างแอปทั้งหมดใช้ "เชลล์" ประเภทหน้าต่าง
ประเภทกรอบเวลาที่จะสร้าง
-
visibleOnAllWorkspaces
บูลีน ไม่บังคับ
หากเป็น "จริง" และแพลตฟอร์มรองรับ หน้าต่างจะปรากฏในพื้นที่ทำงานทั้งหมด
FrameOptions
พร็อพเพอร์ตี้
-
activeColor
string ไม่บังคับ
อนุญาตให้ตั้งค่าสีเฟรมของหน้าต่างขณะใช้งานอยู่ ใส่สีเฟรมได้ก็ต่อเมื่อประเภทเฟรมคือ
chrome
ใส่สีเฟรมได้ก็ต่อเมื่อประเภทเฟรมคือ
chrome
การใส่สีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36
-
สี
string ไม่บังคับ
อนุญาตให้ตั้งค่าสีเฟรม ใส่สีเฟรมได้ก็ต่อเมื่อประเภทเฟรมคือ
chrome
การใส่สีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36
-
inactiveColor
string ไม่บังคับ
อนุญาตให้ตั้งค่าสีเฟรมของหน้าต่างเมื่อไม่มีการใช้งานเป็นสีเดียวกับสีที่ใช้อยู่ ใส่สีเฟรมได้ก็ต่อเมื่อประเภทเฟรมคือ
chrome
ต้องใช้
inactiveColor
ร่วมกับcolor
การใส่สีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36
-
ประเภท
string ไม่บังคับ
ประเภทเฟรม:
none
หรือchrome
(ค่าเริ่มต้นคือchrome
)สำหรับ
none
คุณสามารถใช้พร็อพเพอร์ตี้ CSS-webkit-app-region
เพื่อใช้ความสามารถในการลากกับหน้าต่างของแอปสามารถใช้
-webkit-app-region: drag
เพื่อทำเครื่องหมายบริเวณที่ลากได้ คุณสามารถใช้no-drag
เพื่อปิดใช้รูปแบบนี้ในองค์ประกอบที่ฝังอยู่
State
สถานะของหน้าต่าง: ปกติ เต็มหน้าจอ ขยายใหญ่สุด ย่อเล็กสุด
ค่าแจกแจง
"ปกติ"
"เต็มหน้าจอ"
"ขยายใหญ่สุด"
"ต่ำสุด"
WindowType
ระบุประเภทของหน้าต่างที่จะสร้าง
ค่าแจกแจง
"shell"
ประเภทหน้าต่างเริ่มต้น
"panel"
หน้าต่างที่จัดการโดยระบบปฏิบัติการ (เลิกใช้งานแล้ว)
เมธอด
canSetVisibleOnAllWorkspaces()
chrome.app.window.canSetVisibleOnAllWorkspaces()
แพลตฟอร์มปัจจุบันรองรับการแสดงหน้าต่างบนพื้นที่ทำงานทั้งหมดหรือไม่
การคืนสินค้า
-
boolean
create()
chrome.app.window.create(
url: string,
options?: CreateWindowOptions,
callback?: function,
)
ขนาดและตำแหน่งของหน้าต่างสามารถระบุได้หลายวิธี ตัวเลือกที่ง่ายที่สุดที่ไม่ได้ระบุใดเลย ซึ่งในกรณีนี้จะมีการใช้ขนาดเริ่มต้นและตำแหน่งที่อ้างอิงแพลตฟอร์ม
หากต้องการกำหนดตำแหน่ง ขนาด และข้อจำกัดของหน้าต่าง ให้ใช้พร็อพเพอร์ตี้ innerBounds
หรือ outerBounds
ขอบด้านในไม่รวมการตกแต่งหน้าต่าง ขอบเขตด้านนอกประกอบด้วยแถบชื่อและเฟรมของหน้าต่าง โปรดทราบว่าระบบปฏิบัติการจะกำหนดระยะห่างจากขอบด้านในและขอบด้านนอก ดังนั้นการตั้งค่าพร็อพเพอร์ตี้เดียวกันสำหรับทั้งขอบด้านในและด้านนอกจึงถือเป็นข้อผิดพลาด (เช่น การตั้งค่าทั้ง innerBounds.left
และ outerBounds.left
)
หากต้องการให้ระบบจดจำตำแหน่งของหน้าต่างโดยอัตโนมัติ คุณสามารถตั้งรหัสให้กับหน้าต่างเหล่านั้นได้ หากหน้าต่างมีรหัส ระบบจะใช้รหัสนี้เพื่อจดจำขนาดและตำแหน่งของหน้าต่างเมื่อมีการย้ายหรือปรับขนาด จากนั้นระบบจะใช้ขนาดและตำแหน่งนี้แทนขอบเขตที่ระบุไว้ในการเปิดหน้าต่างที่มีรหัสเดียวกันในครั้งต่อๆ ไป หากคุณต้องการเปิดหน้าต่างที่มีรหัสในตำแหน่งที่ไม่ใช่ค่าเริ่มต้นที่จดจำไว้ คุณสามารถสร้างหน้าต่างที่ซ่อนอยู่ ย้ายหน้าต่างไปยังตำแหน่งที่ต้องการ แล้วแสดงหน้าต่างนั้น
พารามิเตอร์
-
URL
สตริง
-
ตัวเลือก
CreateWindowOptions ไม่บังคับ
-
Callback
ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(createdWindow: AppWindow) => void
-
createdWindow
-
การคืนสินค้า
-
Promise<AppWindow>
Chrome 117 ขึ้นไปPromise รองรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น ส่วนแพลตฟอร์มอื่นๆ ต้องใช้ Callback
current()
chrome.app.window.current()
แสดงผลออบเจ็กต์ AppWindow
สำหรับบริบทสคริปต์ปัจจุบัน (เช่น ออบเจ็กต์ "window" ของ JavaScript) ซึ่งอาจใช้บนแฮนเดิลของบริบทสคริปต์สำหรับหน้าอื่น เช่น otherWindow.chrome.app.window.current() ได้ด้วย
การคืนสินค้า
-
AppWindow | ไม่ได้กำหนด
get()
chrome.app.window.get(
id: string,
)
รับ AppWindow
ด้วยรหัสที่กำหนด หากไม่มีหน้าต่างที่มีรหัสที่กำหนดอยู่จะแสดงผลเป็น Null วิธีนี้เป็นวิธีใหม่ใน Chrome 33
พารามิเตอร์
-
id
สตริง
การคืนสินค้า
-
AppWindow | ไม่ได้กำหนด
getAll()
chrome.app.window.getAll()
รับอาร์เรย์ของหน้าต่างแอปที่สร้างขึ้นในปัจจุบันทั้งหมด วิธีนี้เป็นวิธีใหม่ใน Chrome 33
การคืนสินค้า
กิจกรรม
onBoundsChanged
chrome.app.window.onBoundsChanged.addListener(
callback: function,
)
เริ่มทำงานเมื่อปรับขนาดหน้าต่าง
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onClosed
chrome.app.window.onClosed.addListener(
callback: function,
)
เริ่มทำงานเมื่อปิดหน้าต่าง โปรดทราบว่า ควรฟังข้อความนี้จากหน้าต่างอื่นซึ่งไม่ใช่หน้าต่างที่ถูกปิด เช่น จากหน้าพื้นหลัง เนื่องจากหน้าต่างที่กำลังปิดจะอยู่ระหว่างการถอดออกเมื่อเหตุการณ์เริ่มทำงาน ซึ่งหมายความว่า API บางรายการในบริบทสคริปต์ของหน้าต่างจะไม่ทำงาน
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onFullscreened
chrome.app.window.onFullscreened.addListener(
callback: function,
)
เริ่มทำงานเมื่อหน้าต่างแสดงแบบเต็มหน้าจอ (ผ่าน API ของ AppWindow
หรือ HTML5)
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onMaximized
chrome.app.window.onMaximized.addListener(
callback: function,
)
เริ่มทำงานเมื่อหน้าต่างขยายใหญ่สุด
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onMinimized
chrome.app.window.onMinimized.addListener(
callback: function,
)
เริ่มทำงานเมื่อย่อขนาดหน้าต่าง
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void
onRestored
chrome.app.window.onRestored.addListener(
callback: function,
)
เริ่มทำงานเมื่อมีการคืนค่าหน้าต่างจากการย่อหรือขยายใหญ่สุด
พารามิเตอร์
-
Callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้() => void