Version: 5.3 (switch to 5.4b)
IdiomaEnglish
  • C#
  • JS

Idioma de script

Selecciona tu lenguaje de programación favorito. Todos los fragmentos de código serán mostrados en este lenguaje.

EditorUtility.DisplayProgressBar

Sugiere un cambio

¡Éxito!

Gracias por ayudarnos a mejorar la calidad de la documentación de Unity. A pesar de que no podemos aceptar todas las sugerencias, leemos cada cambio propuesto por nuestros usuarios y actualizaremos los que sean aplicables.

Cerrar

No se puedo enviar

Por alguna razón su cambio sugerido no pudo ser enviado. Por favor <a>intente nuevamente</a> en unos minutos. Gracias por tomarse un tiempo para ayudarnos a mejorar la calidad de la documentación de Unity.

Cerrar

Cancelar

Cambiar al Manual
public static function DisplayProgressBar(title: string, info: string, progress: float): void;
public static void DisplayProgressBar(string title, string info, float progress);

Parámetros

Descripción

Muestra o actualiza una barra de progreso.

The window title will be set to title and the info will be set to info. Progress should be set to a value between 0.0 and 1.0, where 0 means nothing done and 1.0 means 100% completed.

This is useful if you perform any lengthy operations in your editor scripts or wizards, and want to notify the user about the progress.

See Also: DisplayCancelableProgressBar, ClearProgressBar functions.


Progress bar in the editor.


        
using UnityEngine;
using UnityEditor;

public class DisplayProgressBarExample : EditorWindow { static int secs = 0; static double startVal = 0; static double progress = 0;

[MenuItem( "Example/Simple Progress Bar" )] static void Init( ) { // Get existing open window or if none, make a new one: DisplayProgressBarExample window = (DisplayProgressBarExample)EditorWindow.GetWindow( typeof(DisplayProgressBarExample ) ); window.Show( ); }

void OnGUI( ) { if( secs > 0 ) { if( GUILayout.Button( "Display bar" ) ) startVal = EditorApplication.timeSinceStartup;

progress = EditorApplication.timeSinceStartup - startVal;

if( progress < secs ) EditorUtility.DisplayProgressBar( "Simple Progress Bar", "Shows a progress bar for the given seconds", (float)(progress / secs) ); else EditorUtility.ClearProgressBar( ); } else secs = EditorGUILayout.IntField( "Time to wait:", secs ); } void OnInspectorUpdate( ) { Repaint( ); } }