คำอธิบาย
ใช้ chrome.app.window
API เพื่อสร้างหน้าต่าง Windows มีเฟรมที่ไม่บังคับซึ่งมีแถบชื่อและตัวควบคุมขนาด โดยจะไม่เชื่อมโยงกับหน้าต่างเบราว์เซอร์ Chrome ใดๆ ดูการสาธิตตัวเลือกเหล่านี้ในตัวอย่างสถานะหน้าต่าง
ประเภท
AppWindow
พร็อพเพอร์ตี้
-
contentWindow
หน้าต่าง
ออบเจ็กต์ "window" ของ JavaScript สำหรับออบเจ็กต์ย่อยที่สร้างขึ้น
-
id
string
รหัสที่ใช้สร้างหน้าต่าง
-
innerBounds
ตำแหน่ง ขนาด และข้อจำกัดของเนื้อหาหน้าต่าง ซึ่งไม่รวมการตกแต่งหน้าต่าง พร็อพเพอร์ตี้นี้เป็นพร็อพเพอร์ตี้ใหม่ใน Chrome 36
-
outerBounds
ตำแหน่ง ขนาด และข้อจำกัดของหน้าต่าง ซึ่งรวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและกรอบ พร็อพเพอร์ตี้นี้เป็นพร็อพเพอร์ตี้ใหม่ใน Chrome 36
-
clearAttention
void
มองไปที่หน้าต่างอย่างชัดเจน
ฟังก์ชัน
clearAttention
มีลักษณะดังนี้() => {...}
-
ปิด
void
ปิดหน้าต่าง
ฟังก์ชัน
close
มีลักษณะดังนี้() => {...}
-
drawAttention
void
ดึงความสนใจไปที่หน้าต่าง
ฟังก์ชัน
drawAttention
มีลักษณะดังนี้() => {...}
-
โฟกัส
void
โฟกัสหน้าต่าง
ฟังก์ชัน
focus
มีลักษณะดังนี้() => {...}
-
เต็มหน้าจอ
void
หน้าต่างเต็มหน้าจอ
ผู้ใช้จะกู้คืนหน้าต่างได้โดยกด 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
void
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ดูขอบเขตภายในของหน้าต่างเป็นออบเจ็กต์
ContentBounds
ฟังก์ชัน
getBounds
มีลักษณะดังนี้() => {...}
-
returns
-
-
ซ่อน
void
ซ่อนหน้าต่าง ไม่ดำเนินการใดๆ หากหน้าต่างนั้นซ่อนอยู่
ฟังก์ชัน
hide
มีลักษณะดังนี้() => {...}
-
isAlwaysOnTop
void
หน้าต่างอยู่ที่ด้านบนตลอดเวลาใช่ไหม
ฟังก์ชัน
isAlwaysOnTop
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isFullscreen
void
หน้าต่างเป็นแบบเต็มหน้าจอไหม ซึ่งจะเป็นจริงหากสร้างหน้าต่างแบบเต็มหน้าจอหรือสร้างขึ้นเป็นแบบเต็มหน้าจอผ่าน API แบบเต็มหน้าจอ
AppWindow
หรือ HTML5ฟังก์ชัน
isFullscreen
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isMaximized
void
หน้าต่างขยายใหญ่สุดแล้วใช่ไหม
ฟังก์ชัน
isMaximized
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
isMinimized
void
หน้าต่างถูกย่อขนาดอยู่ไหม
ฟังก์ชัน
isMinimized
มีลักษณะดังนี้() => {...}
-
returns
boolean
-
-
ขยายใหญ่สุด
void
ขยายหน้าต่างเต็มหน้าจอ
ฟังก์ชัน
maximize
มีลักษณะดังนี้() => {...}
-
ย่อเล็กสุด
void
ย่อหน้าต่าง
ฟังก์ชัน
minimize
มีลักษณะดังนี้() => {...}
-
moveTo
void
เลิกใช้งานตั้งแต่ Chrome 43ใช้ outerBounds
ย้ายหน้าต่างไปที่ตำแหน่ง (
left
,top
)ฟังก์ชัน
moveTo
มีลักษณะดังนี้(left: number, top: number) => {...}
-
ฝั่งซ้าย
ตัวเลข
-
ด้านบน
ตัวเลข
-
-
resizeTo
void
เลิกใช้งานตั้งแต่ Chrome 43ใช้ outerBounds
ปรับขนาดหน้าต่างให้มีขนาด
width
xheight
พิกเซลฟังก์ชัน
resizeTo
มีลักษณะดังนี้(width: number, height: number) => {...}
-
ความกว้าง
ตัวเลข
-
ส่วนสูง
ตัวเลข
-
-
คืนค่า
void
คืนค่าหน้าต่าง โดยออกจากสถานะขยายใหญ่สุด ย่อเล็กสุด หรือเต็มหน้าจอ
ฟังก์ชัน
restore
มีลักษณะดังนี้() => {...}
-
setAlwaysOnTop
void
ตั้งค่าว่าหน้าต่างควรอยู่เหนือหน้าต่างอื่นๆ ส่วนใหญ่หรือไม่ ต้องมีสิทธิ์
alwaysOnTopWindows
ฟังก์ชัน
setAlwaysOnTop
มีลักษณะดังนี้(alwaysOnTop: boolean) => {...}
-
alwaysOnTop
boolean
-
-
setBounds
void
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
กำหนดขอบเขตภายในของหน้าต่าง
ฟังก์ชัน
setBounds
มีลักษณะดังนี้(bounds: ContentBounds) => {...}
-
ขอบเขต
-
-
setVisibleOnAllWorkspaces
void
กำหนดว่าจะให้หน้าต่างแสดงในพื้นที่ทำงานทั้งหมดหรือไม่ (สำหรับแพลตฟอร์มที่รองรับการดำเนินการนี้เท่านั้น)
ฟังก์ชัน
setVisibleOnAllWorkspaces
มีลักษณะดังนี้(alwaysVisible: boolean) => {...}
-
alwaysVisible
boolean
-
-
แสดง
void
แสดงหน้าต่าง ไม่ดำเนินการใดๆ หากหน้าต่างนี้ปรากฏขึ้นแล้ว โฟกัสหน้าต่างหากมีการตั้งค่า
focused
เป็น "จริง" หรือ "ละเว้น"ฟังก์ชัน
show
มีลักษณะดังนี้(focused?: boolean) => {...}
-
มีสมาธิ
บูลีน ไม่บังคับ
-
Bounds
พร็อพเพอร์ตี้
-
ส่วนสูง
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความสูงปัจจุบันของเนื้อหาหรือหน้าต่าง
-
ฝั่งซ้าย
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนพิกัด X ปัจจุบันของเนื้อหาหรือหน้าต่าง
-
maxHeight
ตัวเลข ไม่บังคับ
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความสูงสูงสุดปัจจุบันของเนื้อหาหรือหน้าต่าง ค่า
null
หมายถึง "ไม่ระบุ" -
maxWidth
ตัวเลข ไม่บังคับ
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความกว้างสูงสุดปัจจุบันของเนื้อหาหรือหน้าต่าง ค่า
null
หมายถึง "ไม่ระบุ" -
minHeight
ตัวเลข ไม่บังคับ
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความสูงขั้นต่ำปัจจุบันของเนื้อหาหรือหน้าต่าง ค่า
null
หมายถึง "ไม่ระบุ" -
minWidth
ตัวเลข ไม่บังคับ
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความกว้างขั้นต่ำปัจจุบันของเนื้อหาหรือหน้าต่าง ค่า
null
หมายถึง "ไม่ระบุ" -
ด้านบน
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนพิกัด Y ปัจจุบันของเนื้อหาหรือหน้าต่าง
-
ความกว้าง
ตัวเลข
คุณสมบัตินี้สามารถใช้เพื่ออ่านหรือเขียนความกว้างปัจจุบันของเนื้อหาหรือหน้าต่าง
-
setMaximumSize
void
กำหนดข้อจำกัดขนาดสูงสุดของเนื้อหาหรือหน้าต่าง คุณกำหนดความกว้างหรือความสูงได้สูงสุดเป็น
null
เพื่อนำจุดยึดออก ค่าundefined
จะไม่มีการเปลี่ยนแปลงใดๆฟังก์ชัน
setMaximumSize
มีลักษณะดังนี้(maxWidth: number, maxHeight: number) => {...}
-
maxWidth
ตัวเลข
-
maxHeight
ตัวเลข
-
-
setMinimumSize
void
กำหนดข้อจำกัดขนาดต่ำสุดของเนื้อหาหรือหน้าต่าง คุณสามารถตั้งค่าความกว้างหรือความสูงขั้นต่ำเป็น
null
เพื่อนำจุดยึดออก ค่าundefined
จะไม่มีการเปลี่ยนแปลงใดๆฟังก์ชัน
setMinimumSize
มีลักษณะดังนี้(minWidth: number, minHeight: number) => {...}
-
minWidth
ตัวเลข
-
minHeight
ตัวเลข
-
-
setPosition
void
กำหนดตำแหน่งด้านซ้ายและด้านบนของเนื้อหาหรือหน้าต่าง
ฟังก์ชัน
setPosition
มีลักษณะดังนี้(left: number, top: number) => {...}
-
ฝั่งซ้าย
ตัวเลข
-
ด้านบน
ตัวเลข
-
-
setSize
void
กำหนดความกว้างและความสูงของเนื้อหาหรือหน้าต่าง
ฟังก์ชัน
setSize
มีลักษณะดังนี้(width: number, height: number) => {...}
-
ความกว้าง
ตัวเลข
-
ส่วนสูง
ตัวเลข
-
BoundsSpecification
พร็อพเพอร์ตี้
-
ส่วนสูง
ตัวเลข ไม่บังคับ
ความสูงของเนื้อหาหรือหน้าต่าง
-
ฝั่งซ้าย
ตัวเลข ไม่บังคับ
พิกัด X ของเนื้อหาหรือหน้าต่าง
-
maxHeight
ตัวเลข ไม่บังคับ
ความสูงสูงสุดของเนื้อหาหรือหน้าต่าง
-
maxWidth
ตัวเลข ไม่บังคับ
ความกว้างสูงสุดของเนื้อหาหรือหน้าต่าง
-
minHeight
ตัวเลข ไม่บังคับ
ความสูงขั้นต่ำของเนื้อหาหรือหน้าต่าง
-
minWidth
ตัวเลข ไม่บังคับ
ความกว้างต่ำสุดของเนื้อหาหรือหน้าต่าง
-
ด้านบน
ตัวเลข ไม่บังคับ
พิกัด Y ของเนื้อหาหรือหน้าต่าง
-
ความกว้าง
ตัวเลข ไม่บังคับ
ความกว้างของเนื้อหาหรือหน้าต่าง
ContentBounds
พร็อพเพอร์ตี้
-
ส่วนสูง
ตัวเลข ไม่บังคับ
-
ฝั่งซ้าย
ตัวเลข ไม่บังคับ
-
ด้านบน
ตัวเลข ไม่บังคับ
-
ความกว้าง
ตัวเลข ไม่บังคับ
CreateWindowOptions
พร็อพเพอร์ตี้
-
alwaysOnTop
บูลีน ไม่บังคับ
หากเป็นจริง หน้าต่างจะอยู่เหนือหน้าต่างอื่นๆ ส่วนใหญ่ หากมีหน้าต่างประเภทนี้หลายหน้าต่าง หน้าต่างที่โฟกัสอยู่ในปัจจุบันจะอยู่ด้านหน้า ต้องมีสิทธิ์
alwaysOnTopWindows
ค่าเริ่มต้นคือ "เท็จ"เรียกใช้
setAlwaysOnTop()
ในหน้าต่างเพื่อเปลี่ยนพร็อพเพอร์ตี้นี้หลังจากสร้าง -
ขอบเขต
ContentBounds ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ขนาดและตำแหน่งของเนื้อหาในหน้าต่าง (ไม่รวมแถบชื่อ) หากมีการระบุรหัสด้วยและมีการแสดงหน้าต่างที่มีรหัสที่ตรงกันก่อนหน้านี้ ระบบจะใช้ขอบเขตที่จดจำไว้ของหน้าต่างแทน
-
มีสมาธิ
บูลีน ไม่บังคับ
หากเป็นจริง ระบบจะโฟกัสหน้าต่างนั้นเมื่อสร้าง ค่าเริ่มต้นคือ true
-
สร้างเฟรม
string | FrameOptions ไม่บังคับ
ประเภทเฟรม:
none
หรือchrome
(ค่าเริ่มต้นคือchrome
) สำหรับnone
คุณสามารถใช้คุณสมบัติ CSS-webkit-app-region
เพื่อใช้ความสามารถในการลากไปยังหน้าต่างของแอป-webkit-app-region: drag
สามารถใช้เพื่อทำเครื่องหมายภูมิภาคที่ลากได้no-drag
สามารถใช้เพื่อปิดใช้งานรูปแบบนี้ในองค์ประกอบที่ฝังการใช้
FrameOptions
เป็นฟีเจอร์ใหม่ใน M36 -
บูลีน ไม่บังคับ
หากเป็น "จริง" ระบบจะสร้างหน้าต่างในสถานะซ่อนอยู่ เรียก show() ในหน้าต่างเพื่อแสดงหลังจากสร้างแล้ว ค่าเริ่มต้นคือ "เท็จ"
-
ไอคอน
string ไม่บังคับ
Chrome 54 ขึ้นไปURL ของไอคอนหน้าต่าง หน้าต่างจะมีไอคอนของตัวเองได้เมื่อตั้งค่า showInShelf เป็น "จริง" URL ควรเป็น URL ส่วนกลางหรือ URL ในเครื่องของส่วนขยาย
-
id
string ไม่บังคับ
รหัสสำหรับระบุหน้าต่าง ซึ่งจะใช้ในการจดจำขนาดและตำแหน่งของหน้าต่างและคืนค่าเรขาคณิตนั้นเมื่อมีการเปิดหน้าต่างที่มีรหัสเดียวกันในภายหลัง หากมีการสร้างหน้าต่างที่มีรหัสที่ระบุโดยมีหน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว หน้าต่างที่เปิดอยู่ในปัจจุบันจะถูกโฟกัสแทนการสร้างหน้าต่างใหม่
-
innerBounds
BoundsSpecification ไม่บังคับ
ใช้ระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของเนื้อหาหน้าต่าง (ไม่รวมการตกแต่งหน้าต่าง) หากระบุ
id
ด้วยและมีการแสดงหน้าต่างที่มีid
ที่ตรงกันก่อนหน้านี้ ระบบจะใช้ขอบเขตที่จดจำไว้แทนโปรดทราบว่าระบบปฏิบัติการจะกำหนดระยะห่างจากขอบระหว่างขอบในและด้านนอก ดังนั้น การตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง
innerBounds
และouterBounds
จะทำให้เกิดข้อผิดพลาดพร็อพเพอร์ตี้นี้เป็นพร็อพเพอร์ตี้ใหม่ใน Chrome 36
-
maxHeight
ตัวเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ความสูงสูงสุดของหน้าต่าง
-
maxWidth
ตัวเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ความกว้างสูงสุดของหน้าต่าง
-
minHeight
ตัวเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ความสูงขั้นต่ำของหน้าต่าง
-
minWidth
ตัวเลข ไม่บังคับ
เลิกใช้งานแล้วใช้ InsideBounds หรือ outerBounds
ความกว้างขั้นต่ำของหน้าต่าง
-
outerBounds
BoundsSpecification ไม่บังคับ
ใช้ระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของหน้าต่าง (รวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและเฟรม) หากระบุ
id
ด้วยและมีการแสดงหน้าต่างที่มีid
ที่ตรงกันก่อนหน้านี้ ระบบจะใช้ขอบเขตที่จดจำไว้แทนโปรดทราบว่าระบบปฏิบัติการจะกำหนดระยะห่างจากขอบระหว่างขอบในและด้านนอก ดังนั้น การตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง
innerBounds
และouterBounds
จะทำให้เกิดข้อผิดพลาดพร็อพเพอร์ตี้นี้เป็นพร็อพเพอร์ตี้ใหม่ใน Chrome 36
-
resizable
บูลีน ไม่บังคับ
หากเป็นจริง ผู้ใช้จะปรับขนาดหน้าต่างได้ ค่าเริ่มต้นคือ true
-
showInShelf
บูลีน ไม่บังคับ
Chrome 54 ขึ้นไปหากเป็นจริง หน้าต่างจะมีไอคอนชั้นวางของตัวเอง มิเช่นนั้นระบบจะจัดกลุ่มหน้าต่างในชั้นวางกับหน้าต่างอื่นๆ ที่เชื่อมโยงกับแอป ค่าเริ่มต้นคือ false หากตั้งค่า showInShelf เป็น "จริง" คุณจะต้องระบุรหัสสําหรับหน้าต่าง
-
Singleton
บูลีน ไม่บังคับ
เลิกใช้งานแล้วไม่รองรับหลายหน้าต่างที่มีรหัสเดียวกันอีกต่อไป
โดยค่าเริ่มต้น ถ้าคุณระบุรหัสสำหรับหน้าต่างนั้น หน้าต่างจะถูกสร้างขึ้นเฉพาะในกรณีที่ไม่มีหน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว หากมีหน้าต่างที่มีรหัสเดียวกันอยู่แล้ว ระบบจะเปิดใช้งานหน้าต่างนั้นแทน หากต้องการสร้างหน้าต่างหลายหน้าต่างที่มีรหัสเดียวกัน คุณสามารถตั้งค่าคุณสมบัตินี้เป็น "เท็จ"
-
state
รัฐ ไม่บังคับ
สถานะเริ่มต้นของหน้าต่าง ซึ่งช่วยให้สามารถสร้างหน้าต่างแบบเต็มหน้าจอ ขยายขนาด หรือย่อขนาดได้อยู่แล้ว ค่าเริ่มต้นคือ "ปกติ"
-
ประเภท
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
)
หากต้องการจดจำตำแหน่งของหน้าต่างโดยอัตโนมัติ คุณก็ระบุรหัสได้ หากหน้าต่างมี ID ระบบจะใช้รหัสนี้เพื่อจดจำขนาดและตำแหน่งของหน้าต่างทุกครั้งที่มีการย้ายหรือปรับขนาด จากนั้นระบบจะใช้ขนาดและตำแหน่งนี้แทนขอบเขตที่ระบุในการเปิดหน้าต่างที่ตามมาด้วยรหัสเดียวกัน ถ้าคุณต้องการเปิดหน้าต่างที่มีรหัสในตำแหน่งอื่นที่ไม่ใช่ค่าเริ่มต้นที่จดจำ คุณสามารถสร้างหน้าต่างนั้นซ่อนอยู่ แล้วย้ายไปยังตำแหน่งที่ต้องการ แล้วจึงแสดงหน้าต่างนั้น
พารามิเตอร์
-
url
string
-
ตัวเลือก
CreateWindowOptions ไม่บังคับ
-
Callback
ฟังก์ชัน ไม่บังคับ
พารามิเตอร์
callback
มีลักษณะดังนี้(createdWindow: AppWindow) => void
-
createdWindow
-
การคืนสินค้า
-
Promise<AppWindow>
Chrome 117 ขึ้นไปPromiss รองรับเฉพาะไฟล์ Manifest V3 ขึ้นไป ส่วนแพลตฟอร์มอื่นๆ จะต้องใช้โค้ดเรียกกลับ
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
string
การคืนสินค้า
-
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