chrome.app.window

คำอธิบาย

ใช้ chrome.app.window API เพื่อสร้างหน้าต่าง หน้าต่างมีกรอบที่ไม่บังคับพร้อมแถบชื่อและตัวควบคุมขนาด โดยไม่ได้เชื่อมโยงกับหน้าต่างเบราว์เซอร์ Chrome ใดๆ ดูตัวอย่างสถานะหน้าต่างเพื่อดูการสาธิตตัวเลือกเหล่านี้

ประเภท

AppWindow

พร็อพเพอร์ตี้

  • contentWindow

    หน้าต่าง

    ออบเจ็กต์ JavaScript "window" สำหรับหน้าต่างย่อยที่สร้างขึ้น

  • id

    สตริง

    รหัสที่ใช้สร้างหน้าต่าง

  • innerBounds

    ตำแหน่ง ขนาด และข้อจำกัดของเนื้อหาในหน้าต่าง ซึ่งไม่รวมการตกแต่งหน้าต่าง พร็อพเพอร์ตี้นี้เป็นของใหม่ใน Chrome 36

  • outerBounds

    ตำแหน่ง ขนาด และข้อจำกัดของหน้าต่าง ซึ่งรวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและกรอบ พร็อพเพอร์ตี้นี้เป็นของใหม่ใน Chrome 36

  • clearAttention

    เป็นโมฆะ

    ล้างการโฟกัสไปที่หน้าต่าง

    ฟังก์ชัน clearAttention มีลักษณะดังนี้

    () => {...}

  • ปิด

    เป็นโมฆะ

    ปิดหน้าต่าง

    ฟังก์ชัน close มีลักษณะดังนี้

    () => {...}

  • drawAttention

    เป็นโมฆะ

    ดึงดูดความสนใจไปที่หน้าต่าง

    ฟังก์ชัน drawAttention มีลักษณะดังนี้

    () => {...}

  • โฟกัส

    เป็นโมฆะ

    โฟกัสหน้าต่าง

    ฟังก์ชัน focus มีลักษณะดังนี้

    () => {...}

  • เต็มหน้าจอ

    เป็นโมฆะ

    ขยายหน้าต่างให้เต็มหน้าจอ

    ผู้ใช้จะกู้คืนหน้าต่างได้โดยกด ESC แอปพลิเคชันสามารถป้องกันไม่ให้ออกจากสถานะเต็มหน้าจอเมื่อกด ESC ได้โดยขอapp.window.fullscreen.overrideEscสิทธิ์และยกเลิกเหตุการณ์ด้วยการเรียกใช้ .preventDefault() ในตัวแฮนเดิล keydown และ keyup ดังนี้

    window.onkeydown = window.onkeyup = function(e) { if (e.keyCode == 27 /* ESC *\/) { e.preventDefault(); } };

    หมายเหตุ window.fullscreen() จะทําให้ทั้งหน้าต่างกลายเป็นแบบเต็มหน้าจอและไม่จําเป็นต้องมีการกระทำของผู้ใช้ นอกจากนี้ยังใช้ HTML5 Fullscreen API เพื่อเข้าสู่โหมดเต็มหน้าจอได้ด้วย (ดูรายละเอียดเพิ่มเติมได้ที่ Web API)

    ฟังก์ชัน fullscreen มีลักษณะดังนี้

    () => {...}

  • getBounds

    เป็นโมฆะ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    รับขอบเขตด้านในของหน้าต่างเป็นออบเจ็กต์ ContentBounds

    ฟังก์ชัน getBounds มีลักษณะดังนี้

    () => {...}

  • ซ่อน

    เป็นโมฆะ

    ซ่อนหน้าต่าง ไม่ดำเนินการใดๆ หากซ่อนหน้าต่างอยู่แล้ว

    ฟังก์ชัน hide มีลักษณะดังนี้

    () => {...}

  • isAlwaysOnTop

    เป็นโมฆะ

    หน้าต่างอยู่ด้านบนเสมอไหม

    ฟังก์ชัน isAlwaysOnTop มีลักษณะดังนี้

    () => {...}

    • returns

      บูลีน

  • isFullscreen

    เป็นโมฆะ

    หน้าต่างเป็นแบบเต็มหน้าจอไหม ค่าจะเป็นจริงหากมีการสร้างหน้าต่างแบบเต็มหน้าจอหรือมีการตั้งค่าให้เป็นแบบเต็มหน้าจอผ่าน AppWindow หรือ API แบบเต็มหน้าจอ HTML5

    ฟังก์ชัน isFullscreen มีลักษณะดังนี้

    () => {...}

    • returns

      บูลีน

  • isMaximized

    เป็นโมฆะ

    หน้าต่างขยายเต็มหน้าจออยู่ไหม

    ฟังก์ชัน isMaximized มีลักษณะดังนี้

    () => {...}

    • returns

      บูลีน

  • isMinimized

    เป็นโมฆะ

    หน้าต่างย่อเล็กสุดอยู่หรือไม่

    ฟังก์ชัน isMinimized มีลักษณะดังนี้

    () => {...}

    • returns

      บูลีน

  • เพิ่ม

    เป็นโมฆะ

    ขยายหน้าต่างให้ใหญ่สุด

    ฟังก์ชัน maximize มีลักษณะดังนี้

    () => {...}

  • ย่อ

    เป็นโมฆะ

    ย่อหน้าต่าง

    ฟังก์ชัน minimize มีลักษณะดังนี้

    () => {...}

  • moveTo

    เป็นโมฆะ

    เลิกใช้งานตั้งแต่ Chrome 43

    ใช้ outerBounds

    ย้ายหน้าต่างไปยังตำแหน่ง (left, top)

    ฟังก์ชัน moveTo มีลักษณะดังนี้

    (left: number, top: number) => {...}

    • ซ้าย

      ตัวเลข

    • ด้านบน

      ตัวเลข

  • resizeTo

    เป็นโมฆะ

    เลิกใช้งานตั้งแต่ Chrome 43

    ใช้ outerBounds

    ปรับขนาดหน้าต่างเป็น widthxheight พิกเซล

    ฟังก์ชัน resizeTo มีลักษณะดังนี้

    (width: number, height: number) => {...}

    • ความกว้าง

      ตัวเลข

    • ส่วนสูง

      ตัวเลข

  • คืนค่า

    เป็นโมฆะ

    คืนค่าหน้าต่าง โดยออกจากสถานะขยายใหญ่สุด ย่อเล็กสุด หรือเต็มหน้าจอ

    ฟังก์ชัน restore มีลักษณะดังนี้

    () => {...}

  • setAlwaysOnTop

    เป็นโมฆะ

    ตั้งค่าว่าหน้าต่างควรอยู่เหนือหน้าต่างอื่นๆ ส่วนใหญ่หรือไม่ ต้องมีสิทธิ์ alwaysOnTopWindows

    ฟังก์ชัน setAlwaysOnTop มีลักษณะดังนี้

    (alwaysOnTop: boolean) => {...}

    • alwaysOnTop

      บูลีน

  • setBounds

    เป็นโมฆะ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ตั้งค่าขอบเขตด้านในของหน้าต่าง

    ฟังก์ชัน setBounds มีลักษณะดังนี้

    (bounds: ContentBounds) => {...}

  • setVisibleOnAllWorkspaces

    เป็นโมฆะ

    กำหนดว่าจะให้หน้าต่างแสดงในพื้นที่ทำงานทั้งหมดหรือไม่ (สำหรับแพลตฟอร์มที่รองรับเท่านั้น)

    ฟังก์ชัน setVisibleOnAllWorkspaces มีลักษณะดังนี้

    (alwaysVisible: boolean) => {...}

    • alwaysVisible

      บูลีน

  • แสดง

    เป็นโมฆะ

    แสดงหน้าต่าง ไม่มีการดำเนินการใดๆ หากหน้าต่างแสดงอยู่แล้ว โฟกัสหน้าต่างหากตั้งค่า 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 ค่าเริ่มต้นคือ false

    โทรหา setAlwaysOnTop() ที่หน้าต่างเพื่อเปลี่ยนพร็อพเพอร์ตี้นี้หลังจากสร้าง

  • ขอบเขต

    ContentBounds ไม่บังคับ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ขนาดและตำแหน่งของเนื้อหาในหน้าต่าง (ไม่รวมแถบชื่อ) หากมีการระบุรหัสด้วยและมีการแสดงหน้าต่างที่มีรหัสที่ตรงกันมาก่อน ระบบจะใช้ขอบเขตของหน้าต่างที่จดจำไว้แทน

  • มีสมาธิ

    บูลีน ไม่บังคับ

    หากเป็นจริง ระบบจะโฟกัสหน้าต่างเมื่อสร้าง ค่าเริ่มต้นคือ True

  • เฟรม

    string | FrameOptions ไม่บังคับ

    ประเภทเฟรม: none หรือ chrome (ค่าเริ่มต้นคือ chrome) สำหรับ none คุณสามารถใช้พร็อพเพอร์ตี้ -webkit-app-region CSS เพื่อใช้ความสามารถในการลากกับหน้าต่างของแอปได้ -webkit-app-region: drag ใช้เพื่อทำเครื่องหมายภูมิภาคที่ลากได้ no-drag ใช้เพื่อปิดใช้รูปแบบนี้ในองค์ประกอบที่ซ้อนกันได้

    การใช้ FrameOptions เป็นฟีเจอร์ใหม่ใน M36

  • ซ่อน

    บูลีน ไม่บังคับ

    หากเป็น "จริง" ระบบจะสร้างหน้าต่างในสถานะซ่อน เรียกใช้ show() ในหน้าต่างเพื่อแสดงหน้าต่างเมื่อสร้างแล้ว ค่าเริ่มต้นคือ false

  • ?

    สตริง ไม่บังคับ

    Chrome 54 ขึ้นไป

    URL ของไอคอนหน้าต่าง หน้าต่างจะมีไอคอนของตัวเองได้เมื่อตั้งค่า showInShelf เป็น true URL ควรเป็น URL ทั่วโลกหรือ URL ท้องถิ่นของส่วนขยาย

  • id

    สตริง ไม่บังคับ

    รหัสเพื่อระบุหน้าต่าง ระบบจะใช้ข้อมูลนี้เพื่อจดจำขนาดและตำแหน่งของหน้าต่าง และคืนค่ารูปทรงดังกล่าวเมื่อเปิดหน้าต่างที่มีรหัสเดียวกันในภายหลัง หากมีการสร้างหน้าต่างที่มีรหัสหนึ่งๆ ในขณะที่หน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว ระบบจะโฟกัสหน้าต่างที่เปิดอยู่แทนที่จะสร้างหน้าต่างใหม่

  • innerBounds

    BoundsSpecification ไม่บังคับ

    ใช้เพื่อระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของเนื้อหาในหน้าต่าง (ไม่รวมการตกแต่งหน้าต่าง) หากมีการระบุ id ด้วย และมีการแสดงหน้าต่างที่มี id ที่ตรงกันมาก่อน ระบบจะใช้ขอบเขตที่จดจำไว้แทน

    โปรดทราบว่าระยะขอบระหว่างขอบด้านในและด้านนอกจะกำหนดโดยระบบปฏิบัติการ ดังนั้นการตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง innerBounds และ outerBounds จะทำให้เกิดข้อผิดพลาด

    พร็อพเพอร์ตี้นี้เป็นของใหม่ใน Chrome 36

  • maxHeight

    หมายเลข ไม่บังคับ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ความสูงสูงสุดของหน้าต่าง

  • maxWidth

    หมายเลข ไม่บังคับ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ความกว้างสูงสุดของหน้าต่าง

  • minHeight

    หมายเลข ไม่บังคับ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ความสูงขั้นต่ำของหน้าต่าง

  • minWidth

    หมายเลข ไม่บังคับ

    เลิกใช้งานแล้ว

    ใช้ innerBounds หรือ outerBounds

    ความกว้างขั้นต่ำของหน้าต่าง

  • outerBounds

    BoundsSpecification ไม่บังคับ

    ใช้เพื่อระบุตำแหน่งเริ่มต้น ขนาดเริ่มต้น และข้อจำกัดของหน้าต่าง (รวมถึงการตกแต่งหน้าต่าง เช่น แถบชื่อและกรอบ) หากมีการระบุ id ด้วย และมีการแสดงหน้าต่างที่มี id ที่ตรงกันมาก่อน ระบบจะใช้ขอบเขตที่จดจำไว้แทน

    โปรดทราบว่าระยะขอบระหว่างขอบด้านในและด้านนอกจะกำหนดโดยระบบปฏิบัติการ ดังนั้นการตั้งค่าพร็อพเพอร์ตี้ขอบเขตเดียวกันสำหรับทั้ง innerBounds และ outerBounds จะทำให้เกิดข้อผิดพลาด

    พร็อพเพอร์ตี้นี้เป็นของใหม่ใน Chrome 36

  • ปรับขนาดได้

    บูลีน ไม่บังคับ

    หากเป็นจริง ผู้ใช้จะปรับขนาดหน้าต่างได้ ค่าเริ่มต้นคือ True

  • showInShelf

    บูลีน ไม่บังคับ

    Chrome 54 ขึ้นไป

    หากเป็นจริง หน้าต่างจะมีไอคอนชั้นวางของตัวเอง ไม่เช่นนั้น ระบบจะจัดกลุ่มหน้าต่างไว้ในชั้นวางพร้อมกับหน้าต่างอื่นๆ ที่เชื่อมโยงกับแอป ค่าเริ่มต้นคือ false หากตั้งค่า showInShelf เป็น true คุณต้องระบุรหัสสำหรับหน้าต่าง

  • Singleton

    บูลีน ไม่บังคับ

    เลิกใช้งานแล้ว

    ระบบไม่รองรับหน้าต่างหลายหน้าต่างที่มีรหัสเดียวกันอีกต่อไป

    โดยค่าเริ่มต้น หากคุณระบุรหัสสำหรับหน้าต่าง ระบบจะสร้างหน้าต่างก็ต่อเมื่อไม่มีหน้าต่างอื่นที่มีรหัสเดียวกันอยู่แล้ว หากมีหน้าต่างที่มีรหัสเดียวกันอยู่แล้ว ระบบจะเปิดใช้งานหน้าต่างนั้นแทน หากต้องการสร้างหลายหน้าต่างที่มีรหัสเดียวกัน คุณสามารถตั้งค่าพร็อพเพอร์ตี้นี้เป็น false ได้

  • รัฐ

    รัฐ ไม่บังคับ

    สถานะเริ่มต้นของหน้าต่าง ซึ่งช่วยให้สร้างหน้าต่างแบบเต็มหน้าจอ ขยายใหญ่สุด หรือย่อเล็กสุดได้ ค่าเริ่มต้นคือ "ปกติ"

  • ประเภท

    WindowType ไม่บังคับ

    Chrome 45 ขึ้นไป เลิกใช้งานตั้งแต่ Chrome 69

    หน้าต่างแอปทั้งหมดใช้ประเภทหน้าต่าง "Shell"

    ประเภทหน้าต่างที่จะสร้าง

  • visibleOnAllWorkspaces

    บูลีน ไม่บังคับ

    หากเป็นจริงและแพลตฟอร์มรองรับ หน้าต่างจะปรากฏในพื้นที่ทำงานทั้งหมด

FrameOptions

พร็อพเพอร์ตี้

  • activeColor

    สตริง ไม่บังคับ

    อนุญาตให้ตั้งค่าสีกรอบของหน้าต่างเมื่อใช้งานอยู่ การระบายสีเฟรมจะใช้ได้ก็ต่อเมื่อประเภทเฟรมเป็น chrome เท่านั้น

    การระบายสีเฟรมจะใช้ได้ก็ต่อเมื่อประเภทเฟรมเป็น chrome เท่านั้น

    การระบายสีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36

  • สี

    สตริง ไม่บังคับ

    อนุญาตให้ตั้งค่าสีเฟรม การระบายสีเฟรมจะใช้ได้ก็ต่อเมื่อประเภทเฟรมเป็น chrome เท่านั้น

    การระบายสีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36

  • inactiveColor

    สตริง ไม่บังคับ

    อนุญาตให้ตั้งค่าสีของกรอบหน้าต่างเมื่อไม่ได้ใช้งานให้แตกต่างจากสีที่ใช้งานอยู่ การระบายสีเฟรมจะใช้ได้ก็ต่อเมื่อประเภทเฟรมเป็น chrome เท่านั้น

    inactiveColor ต้องใช้ร่วมกับ color

    การระบายสีเฟรมเป็นฟีเจอร์ใหม่ใน Chrome 36

  • ประเภท

    สตริง ไม่บังคับ

    ประเภทเฟรม: none หรือ chrome (ค่าเริ่มต้นคือ chrome)

    สำหรับ none คุณสามารถใช้พร็อพเพอร์ตี้ CSS -webkit-app-region เพื่อใช้ความสามารถในการลากกับหน้าต่างของแอป

    -webkit-app-region: drag ใช้เพื่อทำเครื่องหมายภูมิภาคที่ลากได้ no-drag ใช้เพื่อปิดใช้รูปแบบนี้ในองค์ประกอบที่ซ้อนกันได้

State

สถานะของหน้าต่าง: ปกติ เต็มหน้าจอ ขยาย ย่อ

ค่าแจกแจง

"ปกติ"

"fullscreen"

"maximized"

"ย่อเล็กสุด"

WindowType

Chrome 45 ขึ้นไป

ระบุประเภทหน้าต่างที่จะสร้าง

ค่าแจกแจง

"shell"
ประเภทหน้าต่างเริ่มต้น

"panel"
หน้าต่างที่ระบบปฏิบัติการจัดการ (เลิกใช้งานแล้ว)

เมธอด

canSetVisibleOnAllWorkspaces()

chrome.app.window.canSetVisibleOnAllWorkspaces(): boolean

แพลตฟอร์มปัจจุบันรองรับการแสดงหน้าต่างในพื้นที่ทำงานทั้งหมดหรือไม่

การคืนสินค้า

  • บูลีน

create()

Promise
chrome.app.window.create(
  url: string,
  options?: CreateWindowOptions,
  callback?: function,
)
: Promise<AppWindow>

คุณระบุขนาดและตำแหน่งของหน้าต่างได้หลายวิธี ตัวเลือกที่ง่ายที่สุดคือการไม่ระบุอะไรเลย ในกรณีนี้ ระบบจะใช้ขนาดเริ่มต้นและตำแหน่งที่ขึ้นอยู่กับแพลตฟอร์ม

หากต้องการตั้งค่าตำแหน่ง ขนาด และข้อจำกัดของหน้าต่าง ให้ใช้พร็อพเพอร์ตี้ innerBounds หรือ outerBounds ขอบด้านในจะไม่รวมการตกแต่งหน้าต่าง ขอบด้านนอกรวมถึงแถบชื่อและกรอบของหน้าต่าง โปรดทราบว่าระยะขอบระหว่างขอบด้านในและด้านนอกจะกำหนดโดยระบบปฏิบัติการ ดังนั้นการตั้งค่าพร็อพเพอร์ตี้เดียวกันสำหรับทั้งขอบเขตด้านในและด้านนอกจึงถือเป็นข้อผิดพลาด (เช่น การตั้งค่าทั้ง innerBounds.left และ outerBounds.left)

หากต้องการจดจำตำแหน่งของหน้าต่างโดยอัตโนมัติ คุณสามารถกำหนดรหัสให้หน้าต่างได้ หากหน้าต่างมีรหัส ระบบจะใช้รหัสดังกล่าวเพื่อจดจำขนาดและตำแหน่งของหน้าต่างทุกครั้งที่มีการย้ายหรือปรับขนาด จากนั้นระบบจะใช้ขนาดและตำแหน่งนี้แทนขอบเขตที่ระบุเมื่อเปิดหน้าต่างที่มีรหัสเดียวกันในครั้งต่อๆ ไป หากต้องการเปิดหน้าต่างที่มีรหัสในตำแหน่งอื่นที่ไม่ใช่ค่าเริ่มต้นที่จดจำไว้ คุณสามารถสร้างหน้าต่างแบบซ่อน ย้ายไปยังตำแหน่งที่ต้องการ แล้วแสดงได้

พารามิเตอร์

  • URL

    สตริง

  • ตัวเลือก

    CreateWindowOptions ไม่บังคับ

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (createdWindow: AppWindow) => void

การคืนสินค้า

  • Promise<AppWindow>

    Chrome 117 ขึ้นไป

    ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

current()

chrome.app.window.current(): AppWindow | undefined

แสดงออบเจ็กต์ AppWindow สำหรับบริบทสคริปต์ปัจจุบัน (เช่น ออบเจ็กต์ "window" ของ JavaScript) นอกจากนี้ ยังเรียกใช้ในแฮนเดิลไปยังบริบทสคริปต์สำหรับหน้าอื่นได้ด้วย เช่น otherWindow.chrome.app.window.current()

การคืนสินค้า

  • AppWindow | ไม่ได้กำหนดไว้

get()

chrome.app.window.get(
  id: string,
)
: AppWindow | undefined

รับ AppWindow ที่มีรหัสที่ระบุ หากไม่มีหน้าต่างที่มีรหัสที่ระบุ ระบบจะแสดงผลเป็น Null วิธีนี้เป็นวิธีใหม่ใน Chrome 33

พารามิเตอร์

  • id

    สตริง

การคืนสินค้า

  • AppWindow | ไม่ได้กำหนดไว้

getAll()

chrome.app.window.getAll(): AppWindow[]

รับอาร์เรย์ของหน้าต่างแอปทั้งหมดที่สร้างขึ้นในปัจจุบัน วิธีนี้เป็นวิธีใหม่ใน 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,
)

เริ่มทำงานเมื่อหน้าต่างเป็นแบบเต็มหน้าจอ (ผ่าน AppWindow หรือ HTML5 API)

พารามิเตอร์

  • 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