스크립트가 메뉴, 대화상자, 사이드바와 같은 기능을 추가할 수 있는 Google 앱의 사용자 인터페이스 환경 인스턴스입니다. 스크립트는 열려 있는 편집기의 현재 인스턴스에 대한 UI와만 상호작용할 수 있으며, 스크립트가 편집기에 컨테이너 결합된 경우에만 상호작용할 수 있습니다.
// Display a dialog box with a title, message, input field, and "Yes" and "No" // buttons. The user can also close the dialog by clicking the close button in // its title bar. const ui = SpreadsheetApp.getUi(); const response = ui.prompt( 'Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO, ); // Process the user's response. if (response.getSelectedButton() === ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() === ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
속성
속성 | 유형 | 설명 |
---|---|---|
Button | Button | 사용자가 대화상자에서 클릭한 버튼을 나타내기 위해 알림 또는 Prompt 에서 반환하는 사전 정의된 현지화된 대화상자 버튼을 나타내는 enum입니다. |
Button | Button | 알림 또는 프롬프트에 추가할 수 있는 사전 정의된 현지화된 하나 이상의 대화상자 버튼 세트를 나타내는 enum입니다. |
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
alert(prompt) | Button | 사용자의 편집기에서 지정된 메시지와 '확인' 버튼이 있는 대화상자를 엽니다. |
alert(prompt, buttons) | Button | 지정된 메시지와 버튼 세트가 포함된 대화상자를 사용자의 편집기에서 엽니다. |
alert(title, prompt, buttons) | Button | 지정된 제목, 메시지, 버튼 세트가 포함된 대화상자를 사용자의 편집기에서 엽니다. |
create | Menu | 편집기의 확장 프로그램 메뉴에 하위 메뉴를 삽입하는 데 사용할 수 있는 빌더를 만듭니다. |
create | Menu | 편집기의 사용자 인터페이스에 메뉴를 추가하는 데 사용할 수 있는 빌더를 만듭니다. |
prompt(prompt) | Prompt | 사용자의 편집기에 지정된 메시지와 '확인' 버튼이 있는 입력 대화상자를 엽니다. |
prompt(prompt, buttons) | Prompt | 지정된 메시지와 버튼 세트가 포함된 입력 대화상자를 사용자의 편집기에서 엽니다. |
prompt(title, prompt, buttons) | Prompt | 지정된 제목, 메시지, 버튼 세트가 포함된 입력 대화상자를 사용자의 편집기에서 엽니다. |
show | void | 맞춤 클라이언트 측 콘텐츠가 포함된 모달 대화상자를 사용자의 편집기에서 엽니다. |
show | void | 사용자의 편집기에서 맞춤 클라이언트 측 콘텐츠가 포함된 모드리스 대화상자를 엽니다. |
show | void | 사용자 편집기에서 맞춤 클라이언트 측 콘텐츠가 포함된 사이드바를 엽니다. |
자세한 문서
alert(prompt)
사용자의 편집기에서 지정된 메시지와 '확인' 버튼이 있는 대화상자를 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결과 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display "Hello, world" in a dialog box with an "OK" button. The user can also // close the dialog by clicking the close button in its title bar. SpreadsheetApp.getUi().alert('Hello, world');
매개변수
이름 | 유형 | 설명 |
---|---|---|
prompt | String | 대화상자에 표시할 메시지입니다. |
리턴
Button
: 사용자가 클릭한 버튼입니다.
alert(prompt, buttons)
지정된 메시지와 버튼 세트가 포함된 대화상자를 사용자의 편집기에서 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결과 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display a dialog box with a message and "Yes" and "No" buttons. The user can // also close the dialog by clicking the close button in its title bar. const ui = SpreadsheetApp.getUi(); const response = ui.alert( 'Are you sure you want to continue?', ui.ButtonSet.YES_NO, ); // Process the user's response. if (response === ui.Button.YES) { Logger.log('The user clicked "Yes."'); } else { Logger.log( 'The user clicked "No" or the close button in the dialog\'s title bar.', ); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
prompt | String | 대화상자에 표시할 메시지입니다. |
buttons | Button | 대화상자에 표시되도록 설정된 버튼입니다. |
리턴
Button
: 사용자가 클릭한 버튼입니다.
alert(title, prompt, buttons)
지정된 제목, 메시지, 버튼 세트가 포함된 대화상자를 사용자의 편집기에서 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결과 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display a dialog box with a title, message, and "Yes" and "No" buttons. The // user can also close the dialog by clicking the close button in its title bar. const ui = SpreadsheetApp.getUi(); const response = ui.alert( 'Confirm', 'Are you sure you want to continue?', ui.ButtonSet.YES_NO, ); // Process the user's response. if (response === ui.Button.YES) { Logger.log('The user clicked "Yes."'); } else { Logger.log( 'The user clicked "No" or the close button in the dialog\'s title bar.', ); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
title | String | 대화상자 위에 표시할 제목입니다. |
prompt | String | 대화상자에 표시할 메시지입니다. |
buttons | Button | 대화상자에 표시되도록 설정된 버튼입니다. |
리턴
Button
: 사용자가 클릭한 버튼입니다.
create Addon Menu()
편집기의 확장 프로그램 메뉴에 하위 메뉴를 삽입하는 데 사용할 수 있는 빌더를 만듭니다. 메뉴는 Menu.addToUi()
가 호출될 때까지 실제로 업데이트되지 않습니다. 스크립트가 부가기능으로 실행되는 경우 하위 메뉴 이름은 웹 스토어의 부가기능 이름과 일치합니다. 스크립트가 문서에 직접 바인딩된 경우 하위 메뉴 이름은 스크립트 이름과 일치합니다. 자세한 내용은 메뉴 가이드를 참고하세요.
// Add an item to the Add-on menu, under a sub-menu whose name is set // automatically. function onOpen(e) { SpreadsheetApp.getUi() .createAddonMenu() .addItem('Show', 'showSidebar') .addToUi(); }
리턴
Menu
: 새 메뉴 빌더입니다.
create Menu(caption)
편집기의 사용자 인터페이스에 메뉴를 추가하는 데 사용할 수 있는 빌더를 만듭니다. 메뉴는 Menu.addToUi()
가 호출될 때까지 실제로 추가되지 않습니다. 자세한 내용은 메뉴 가이드를 참고하세요. 최상위 메뉴의 라벨은 제목 형식 (모든 주요 단어 대문자)으로 표시해야 하지만 하위 메뉴의 라벨은 문장 형식 (첫 단어만 대문자)으로 표시해야 합니다. 스크립트가 부가기능으로 게시되면 caption
매개변수가 무시되고 메뉴가 create
과 동일하게 확장 프로그램 메뉴의 하위 메뉴로 추가됩니다.
// Add a custom menu to the active document, including a separator and a // sub-menu. function onOpen(e) { SpreadsheetApp.getUi() .createMenu('My Menu') .addItem('My menu item', 'myFunction') .addSeparator() .addSubMenu( SpreadsheetApp.getUi() .createMenu('My sub-menu') .addItem('One sub-menu item', 'mySecondFunction') .addItem('Another sub-menu item', 'myThirdFunction'), ) .addToUi(); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
caption | String | 메뉴의 라벨로, 최상위 메뉴의 경우 모든 주요 단어가 대문자로 표시되고 하위 메뉴의 경우 첫 단어만 대문자로 표시됩니다. |
리턴
Menu
: 새 메뉴 빌더입니다.
prompt(prompt)
사용자의 편집기에 지정된 메시지와 '확인' 버튼이 있는 입력 대화상자를 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결과 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display a dialog box with a message, input field, and an "OK" button. The // user can also close the dialog by clicking the close button in its title bar. const ui = SpreadsheetApp.getUi(); const response = ui.prompt('Enter your name:'); // Process the user's response. if (response.getSelectedButton() === ui.Button.OK) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
prompt | String | 대화상자에 표시할 메시지입니다. |
리턴
Prompt
: 사용자의 응답을 나타냅니다.
prompt(prompt, buttons)
지정된 메시지와 버튼 세트가 포함된 입력 대화상자를 사용자의 편집기에서 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결과 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display a dialog box with a message, input field, and "Yes" and "No" buttons. // The user can also close the dialog by clicking the close button in its title // bar. const ui = SpreadsheetApp.getUi(); const response = ui.prompt('May I know your name?', ui.ButtonSet.YES_NO); // Process the user's response. if (response.getSelectedButton() === ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() === ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
prompt | String | 대화상자에 표시할 메시지입니다. |
buttons | Button | 대화상자에 표시되도록 설정된 버튼입니다. |
리턴
Prompt
: 사용자의 응답을 나타냅니다.
prompt(title, prompt, buttons)
지정된 제목, 메시지, 버튼 세트가 포함된 입력 대화상자를 사용자의 편집기에서 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지합니다. 사용자가 대화상자를 닫은 후 스크립트가 재개되지만 Jdbc
연결 및 Lock
잠금은 정지 중에 유지되지 않습니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
// Display a dialog box with a title, message, input field, and "Yes" and "No" // buttons. The user can also close the dialog by clicking the close button in // its title bar. const ui = SpreadsheetApp.getUi(); const response = ui.prompt( 'Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO, ); // Process the user's response. if (response.getSelectedButton() === ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() === ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
title | String | 대화상자 위에 표시할 제목입니다. |
prompt | String | 대화상자에 표시할 메시지입니다. |
buttons | Button | 대화상자에 표시되도록 설정된 버튼입니다. |
리턴
Prompt
: 사용자의 응답을 나타냅니다.
show Modal Dialog(userInterface, title)
맞춤 클라이언트 측 콘텐츠가 포함된 모달 대화상자를 사용자의 편집기에서 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지하지 않습니다. 서버 측 스크립트와 통신하려면 클라이언트 측 구성요소가 Html
용 google.script
API를 사용하여 비동기 콜백을 실행해야 합니다. 프로그래매틱 방식으로 대화상자를 닫으려면 Html
웹 앱의 클라이언트 측에서
google.script.host.close()
를 호출합니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
모달 대화상자는 사용자가 대화상자 이외의 항목과 상호작용하지 못하도록 합니다. 반면 모드 없는 대화상자 및 측면 패널을 사용하면 사용자가 편집기와 상호작용할 수 있습니다. 대부분의 경우 모달 대화상자 또는 사이드바가 모드리스 대화상자보다 낫습니다.
// Display a modal dialog box with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'My add-on');
매개변수
이름 | 유형 | 설명 |
---|---|---|
user | Object | 표시할 인터페이스를 나타내는 Html 입니다. |
title | String | 대화상자의 제목입니다. user 객체에서 set 를 호출하여 설정된 모든 제목을 재정의합니다. |
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/script.container.ui
show Modeless Dialog(userInterface, title)
사용자의 편집기에서 맞춤 클라이언트 측 콘텐츠가 포함된 모드리스 대화상자를 엽니다. 이 메서드는 대화상자가 열려 있는 동안 서버 측 스크립트를 일시중지하지 않습니다. 서버 측 스크립트와 통신하려면 클라이언트 측 구성요소가 Html
용 google.script
API를 사용하여 비동기 콜백을 실행해야 합니다. 프로그래매틱 방식으로 대화상자를 닫으려면 Html
웹 앱의 클라이언트 측에서
google.script.host.close()
를 호출합니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
모드리스 대화상자를 사용하면 사용자가 대화상자 뒤에 있는 편집기와 상호작용할 수 있습니다. 반면 모달 대화상자는 그렇지 않습니다. 대부분의 경우 모달 대화상자 또는 측면 패널이 모드 없는 대화상자보다 낫습니다.
// Display a modeless dialog box with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'My add-on');
매개변수
이름 | 유형 | 설명 |
---|---|---|
user | Object | 표시할 인터페이스를 나타내는 Html 입니다. |
title | String | 대화상자의 제목입니다. user 객체에서 set 를 호출하여 설정된 모든 제목을 재정의합니다. |
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/script.container.ui
show Sidebar(userInterface)
사용자 편집기에서 맞춤 클라이언트 측 콘텐츠가 포함된 사이드바를 엽니다. 이 메서드는 사이드바가 열려 있는 동안 서버 측 스크립트를 일시중지하지 않습니다. 서버 측 스크립트와 통신하려면 클라이언트 측 구성요소가 Html
용 google.script
API를 사용하여 비동기 콜백을 실행해야 합니다. 프로그래매틱 방식으로 사이드바를 닫으려면 Html
웹 앱의 클라이언트 측에서
google.script.host.close()
를 호출합니다. 자세한 내용은 대화상자 및 사이드바 가이드를 참고하세요.
사이드바는 환경에서 왼쪽에서 오른쪽으로 쓰는 언어를 사용하는 사용자의 경우 편집기의 오른쪽에, 오른쪽에서 왼쪽으로 쓰는 언어를 사용하는 사용자의 경우 편집기의 왼쪽에 표시됩니다. 스크립트로 표시되는 모든 사이드바의 너비는 300픽셀입니다.
// Display a sidebar with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setTitle('My add-on'); SpreadsheetApp.getUi().showSidebar(htmlOutput);
매개변수
이름 | 유형 | 설명 |
---|---|---|
user | Object | 표시할 인터페이스를 나타내는 Html 입니다. |
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.
-
https://www.googleapis.com/auth/script.container.ui