roClockWidget
13 min
este objeto coloca un reloj en la pantalla solo tiene argumentos de construcción creación del objeto el objeto roclockwidget se crea con varios parámetros createobject("roclockwidget", rect as rorectangle, res as roresourcemanager, display type as integer) rect el rectángulo en el que se muestra el reloj el widget selecciona una fuente según el tamaño del rectángulo res un archivo resources txt que permite la localización mediante el objeto roresourcemanager (consulte a continuación para obtener más detalles) display type use 0 solo para la fecha y 1 solo para el reloj para mostrar ambos en la pantalla, debe crear dos widgets ejemplo rect=createobject("rorectangle", 0, 0, 300, 60) res=createobject("roresourcemanager", "resources txt") c=createobject("roclockwidget", rect, res, 1) c show() el administrador de recursos se pasa al widget, que utiliza los siguientes recursos dentro del archivo resources txt para mostrar correctamente la hora y la fecha estas son las entradas de "eng" \[clock date format] eng "%a, %b %e, %y" \[clock time format] eng "%l %m" \[clock time am] eng "am" \[clock time pm] eng "pm" \[clock date short month] eng "jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec" \[clock date long month] eng "january|february|march|april|may|june|july|august|september|october|november|december" \[clock date short day] eng "sun|mon|tue|wed|thu|fri|sat" \[clock date long day] eng "sunday|monday|tuesday|wednesday|thursday|friday|saturday" caracteres de control los siguientes son los caracteres de control para las cadenas de formato de fecha/hora // date format // // %a abbreviated weekday name // %a long weekday name // %b abbreviated month name // %b full month name // %d day of the month as decimal 01 to 31 // %e like %d, the day of the month as a decimal number, but without leading zero // %m month name as a decimal 01 to 12 // %n like %m, the month as a decimal number, but without leading zero // %y two digit year // %y four digit year // time format // // %h the hour using 24 hour clock (00 to 23) // %i the hour using 12 hour clock (01 to 12) // %k the hour using 24 hour clock (0 to 23); single digits are preceded by a blank // %l the hour using 12 hour clock (1 to 12); single digits are preceded by a blank // %m minutes (00 to 59) // %s seconds (00 to 59) ifwidget setforegroundcolor(color as integer) as boolean establece el color de primer plano en formato argb los valores de color hexadecimales deben convertirse a enteros antes de pasarse a este método (por ejemplo, el valor \&hffffffff debe pasarse como 4294967295) puede usar el método hextointeger() (disponible en la extensión de la biblioteca principal docid\ a2aq frnag8hdssdqny8k ) para convertir una cadena hexadecimal en un entero setbackgroundcolor(color as integer) as boolean establece el color de fondo en formato argb los valores de color hexadecimales deben convertirse a enteros antes de pasarse a este método (por ejemplo, el valor \&hffffffff debe pasarse como 4294967295) puede usar el método hextointeger() (disponible en la extensión de la biblioteca principal docid\ a2aq frnag8hdssdqny8k ) para convertir una cadena hexadecimal en un entero los 8 bits superiores de los valores setforegroundcolor() y setbgackgroundcolor() son parámetros de "alpha" cero equivale a completamente transparente y 255 a completamente opaco esta función permite efectos similares a los subtítulos por ejemplo, puede crear un cuadro negro semitransparente que contenga texto sobre un video setfont(font filename as string) as boolean establece font filename usando una fuente truetype (por ejemplo, sd /arial ttf ) setbackgroundbitmap(bitmap filename as string, stretch as boolean) as boolean establece la imagen bitmap de fondo si stretch es true, entonces la imagen se ajusta al tamaño de la ventana setbackgroundbitmap(parameters as roassociativearray, stretch as boolean) as boolean establece la imagen bitmap de fondo si estirar es true, entonces la imagen se ajusta al tamaño de la ventana el arreglo asociativo puede contener los siguientes parámetros nombre de archivo el nombre del archivo de imagen algoritmo de cifrado el algoritmo de cifrado de archivos actualmente las opciones son "aesctr" y "aesctrhmac" clave de cifrado la clave para descifrar el archivo de imagen esta es una matriz de bytes compuesta por 128 bits de clave, seguidos por 128 bits de iv consulte descifrado de imágenes docid\ z65qez0xwq9c70obegcyi para obtener detalles sobre cómo mostrar imágenes cifradas setsafetextregion(region as rorectangle) as boolean especifica el rectángulo dentro del widget donde el texto puede dibujarse de forma segura show() as boolean muestra el widget después de la creación, el widget permanece oculto hasta que se llama a show() hide() as boolean oculta el widget raise() as void envía el widget a la parte superior del orden z en el plano gráfico (es decir, delante de todas las demás superficies que implementan la interfaz ifwidget ) de forma predeterminada, los nuevos widgets se colocan en la parte superior del orden z gráfico algunas superficies siempre se dibujan en la parte superior del orden z gráfico, incluidos el cursor del mouse, los subtítulos y marquesinas desplazables docid 2pwsmk6gfbdkc8rtfzkfj consejo puede usar los métodos pausegraphics() / resumegraphics() en el objeto rovideomode docid\ f0dvnrbdpvgozlrvb29gd para garantizar que múltiples cambios en el orden z gráfico ocurran simultáneamente lower() as void envía el widget a la parte inferior del orden z en el plano gráfico (es decir, detrás de todas las demás superficies que implementan la interfaz ifwidget ) de forma predeterminada, los nuevos widgets se colocan en la parte superior del orden z gráfico getfailurereason() as string proporciona información útil adicional si el valor de retorno de una función indica un error setrectangle(r as rorectangle) as boolean cambia el tamaño y la posición del rectángulo del widget usando el objeto rorectangle