chescobar 21-04-2021, 14:08
Estimados, en la comunidad de Libera tu Radio, donde muchos usuarios usan G-Radio (interfaz con gambas 3) para automatizar sus estaciones de radio hemos tenido una semana agitada debido a que la interfaz sufrió distorsiones importantes (inversión de los colores, descuadre de los botones, descuadre de las áreas de hsplit vertical, etc). 

Luego de varios de varios días de búsqueda del problema (parecía ser de qt5 inicialmente) el equipo que mantiene la distro GNU/Etertic (orientada para radios) encontró que el problema es la versión de gambas3. Aquellos equipos cuyos repos actualizaron a la versión 3.16 están presentando este problema, les hemos indicado como quitar el repo externo e instalar las versiones menores que vienen en el propio Sistema Operativo.

Sin embargo el problema se presentará en aquellas distros que vengan con la 3.16. 

¿les ha pasado?, ¿cómo lo solucionaron?

Saludos

Charles.
vuott 20-04-2021, 22:20
Hola os dejo este mi codigo para monitorizar la temperatura del hardware mediante las funciones del API de libsensors:

Código:
Library "libsensors:5.0.0"
 
Public Struct sensors_bus_id
  type As Short
  nr As Short
End Struct

Public Struct sensors_chip_name
  prefix As Pointer
  bus As Struct Sensors_bus_id
  addr As Integer
  path As Pointer
End Struct

Public Struct sensors_feature
  name As Pointer
  number As Integer
  type As Integer
  first_subfeature As Integer
  padding1 As Integer
End Struct

Public Struct sensors_subfeature
  name As Pointer
  number As Integer
  type As Integer
  mapping As Integer
  flags As Integer
End Struct

Private Const SENSORS_FEATURE_TEMP As Integer = 2
Private Const SENSORS_SUBFEATURE_TEMP_INPUT As Integer = 512

' int sensors_init(FILE *input)
' Load the configuration file and the detected chips list.
Private Extern sensors_init(input_ As Pointer) As Integer

' const sensors_chip_name *sensors_get_detected_chips(const sensors_chip_name *match, int *nr)
' This function returns all detected chips that match a given chip name, one by one.
Private Extern sensors_get_detected_chips(match_ As Pointer, nr As Pointer) As Pointer

' int sensors_snprintf_chip_name(char *str, size_t size, const sensors_chip_name *chip)
' Prints a chip name from its internal representation.
Private Extern sensors_snprintf_chip_name(str_ As Pointer, size As Integer, chip As Sensors_chip_name) As Integer

' const char* sensors_get_adapter_name (const sensors_bus_id * bus)
' Returns the adapter name of a bus number, as used within the sensors_chip_name structure.
Private Extern sensors_get_adapter_name(bus As Sensors_bus_id) As String

' const sensors_feature * sensors_get_features(const sensors_chip_name *name, int *nr)
' This returns all main features of a specific chip. nr is an internally used variable.
Private Extern sensors_get_features(name As Sensors_chip_name, nr As Pointer) As Pointer

' char *sensors_get_label(const sensors_chip_name *name, const sensors_feature *feature)
' Look up the label for a given feature.
Private Extern sensors_get_label(name As Sensors_chip_name, feature As Sensors_feature) As Pointer

' const sensors_subfeature * sensors_get_subfeature(const sensors_chip_name *name, const sensors_feature *feature, sensors_subfeature_type type)
' Returns the subfeature of the given type for a given main feature.
Private Extern sensors_get_subfeature(name As Sensors_chip_name, feature As Sensors_feature, type As Integer) As Sensors_subfeature

' int sensors_get_value(const sensors_chip_name *name, int subfeat_nr, double *value)
' Read the value of a subfeature of a certain chip.
Private Extern sensors_get_value(name As Sensors_chip_name, subfeat_nr As Integer, value As Pointer) As Integer

' void sensors_cleanup(void)
' Cleans everything up.
Private Extern sensors_cleanup()


Public Sub Main()

 Dim p As Pointer
 Dim scn As Sensors_chip_name
 Dim chn As Integer
 
 If sensors_init(Null) <> 0 Then
   Chiusura()
   Error.Raise("Errore !")
 Endif
 
' Devuelve en la variable "chn" el número de chips encontrados:
 p = sensors_get_detected_chips(Null, VarPtr(chn))
 
 While p > 0
' Utiliza el Puntero, para no incurrir en errores encontrados en las pruebas, y lo asigna a la Estructura:
   scn = p
   If Mostra(scn) > 0 Then Print
   p = sensors_get_detected_chips(Null, VarPtr(chn))
 Wend 
 
' Cerrando:
 Chiusura()
 
End 

Private Procedure Chiusura()
 
' Libera la memoria ocupada anteriormente por la libreria "libsensors":
 sensors_cleanup()

End

Private Procedure Mostra(nome As Sensors_chip_name) As Integer
 
 Dim buf As New Byte[128]
 Dim chip As New String[2]
 Dim adap As String
 Dim p As Pointer
 Dim sft As Sensors_feature
 Dim subf As Sensors_subfeature
 Dim i, c As Integer
 Dim f As Float
 
 sensors_snprintf_chip_name(buf.Data, buf.Count, nome)
 chip[0] = String@(buf.Data)
 adap = sensors_get_adapter_name(nome.bus)
 chip[1] = adap
 
 p = sensors_get_features(nome, VarPtr(i))
 
 While p > 0
' Utiliza el Puntero, para no incurrir en errores encontrados en las pruebas, y lo asigna a la Estructura:
   sft = p
   If sft.type == SENSORS_FEATURE_TEMP Then 
     subf = sensors_get_subfeature(nome, sft, SENSORS_SUBFEATURE_TEMP_INPUT) 
     sensors_get_value(nome, subf.number, VarPtr(f))
     If chip.Count > 0 Then
       Print chip[0]
       Print "Adapter: " & chip[1]
       chip.Clear
     Endif
     Print String@(sensors_get_label(nome, sft)); ": "; "\e[1m"; f; "\e[0m"; "°C"
     Inc c
   Endif 
   p = sensors_get_features(nome, VarPtr(i))
 Wend 
 
 Return c
 
End
gambafeliz 20-04-2021, 15:55
Hola

Tenemos por ejemplo:

Public Sub Button1_Click()

End

Imaginad que queremos poner una variable global donde almacenamos este evento. Para después desde cualquier parte del programa usar este evento.

¿Se puede?
¿Como lo almaceno?
¿Como uso esta variable después para que se produzca el evento?

Gracias.
Páginas (552):    1 443 444 445 446 447 552   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 280
Último miembro: herbert
Temas del foro: 1,701
Mensajes del foro: 8,839
Últimos temas
Conexión Bluetooth: RFCOM...
Foro: Hardware & IoT
Último mensaje por: jguardon, 06-05-2025, 16:57
Respuestas: 5 - Vistas: 125
gb.db2: columnas calculad...
Foro: Bases de Datos
Último mensaje por: guizans, 04-05-2025, 21:02
Respuestas: 14 - Vistas: 503
Gambas + ERP = GamERP.
Foro: Aplicaciones/Fragmentos de Código
Último mensaje por: tercoide, 30-04-2025, 15:57
Respuestas: 25 - Vistas: 2,067
Manejando imágenes desde ...
Foro: Videotutoriales
Último mensaje por: Shordi, 30-04-2025, 06:00
Respuestas: 2 - Vistas: 117
Imprimir resultados en el...
Foro: General
Último mensaje por: Turriano, 28-04-2025, 11:53
Respuestas: 5 - Vistas: 208
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.