vuott 12-01-2022, 04:03
Hola,
en este mi siguiente programa, haciendo clic con el botón derecho del ratón, se dibujan secuencias temporales de círculos concéntricos en el punto donde se ha hecho clic.
Al final, quedará un punto rojo.
En cambio, al hacer clic con el botón central del ratón, los puntos previamente dibujados se borrarán.
Hay que activar el componente gb.map .

Código:
Private MapView1 As MapView
Private pn As Panel
Private mmpp As MapPoint[]
Private ct As Short

Public Sub Form_Open()
 
  With Me
    .W = Screen.AvailableWidth
    .H = Screen.AvailableHeight
    .Arrangement = Arrange.Fill
  End With
  With MapView1 = New MapView(Me) As "MapView1"
    .Map.AddTile("GoogleMap", "https://mt0.google.com/vt/lyrs=s&hl=&x={x}&y={y}&z={z}")
    .Map.Zoom = 14
' Establece el centro del mapa al principio:
    .Map.Center = New MapPoint(36.5139777, -6.2727421) ' ...Gades !  Consuli romano Shell antiquissima patria est !
  End With 

' Identifica el Objeto "Hijo" de la "Mapview", que es un "Panel":
   pn = MapView1.Children[0]
   
   mmpp = New MapPoint[]

End

Public Sub MapView1_MouseUp()
  
' Al hacer clic con el botón central del ratón, se dibujan en la superficie de la "Mapview" unos círculos concéntricos en el punto donde se ha hecho clic, y también se confirman los puntos previamente establecidos:
  If Mouse.Right Then 
    Dim pt As Point
    Dim c As Short
    pt = New Point(Mouse.X, Mouse.Y)
    mmpp.Push(MapView1.Map.PixelToMapPointRel(pt))
' Provee los datos para hacer dibujar unos círculos concéntricos secuencialmente sobre el mapa mostrada por el Objeto "Mapview":
    For c = 28 DownTo 1 Step 3
      ct = c
      MapView1.Refresh
      Wait 0.1
    Next 
    Me.Text = Format(MapView1.Map.PixelToMapPointRel(pt).Lat, "0.000000") & "   " &
              Format(MapView1.Map.PixelToMapPointRel(pt).Lon, "0.000000")
  Endif 
  
' Al hacer clic con el botón central del ratón, los puntos previamente dibujados son cacelados por la superficie de la "Mapview":
  If Mouse.Middle Then 
    mmpp.clear
    MapView1.Refresh
  Endif 
 
End

Public Sub MapView1_Draw()
  
  If mmpp.Count == 0 Then Return 
  
  Dim n As Integer
  With Paint
    .Begin(pn.Children[0])
    .Brush = .Color(Color.Red)
    For n = 0 To mmpp.Max - 1
      .Arc(MapView1.Map.MapPointToPixelRel(mmpp[n]).X, MapView1.Map.MapPointToPixelRel(mmpp[n]).Y, 2, Rad(0), Rad(360), False)
      .Fill
    Next 
    .Arc(MapView1.Map.MapPointToPixelRel(mmpp[mmpp.Max]).X, MapView1.Map.MapPointToPixelRel(mmpp[mmpp.Max]).Y, 2 * ct, Rad(0), Rad(360), False)
    If ct > 1 Then 
      .Stroke
    Else 
      .Fill
    Endif 
    .End
  End With
  
End
gambafeliz 11-01-2022, 21:01
Hola a tod@s

Se que va a ser la pregunta tonta de la semana pero no me importa.

¿Por qué en Gambas cuando uno pulsa Enter del teclado alfanumérico es distinto al Enter del teclado numérico?

Es que yo recuerdo que en Visual Basic ambas teclas eran igual de válidas, o eso creo recordar. Perdón si no fue así pero eso me parece que ocurría.

En fin, Gracias.
Shell 11-01-2022, 15:32
Buenas!.

Probablemente ya los conocíais, o no. Y tampoco sé si habéis solucionado problemas del adaptador de red
con esos comandos.

Hasta ahora sigo con el problema de conexión de red que se vuelve lenta al volver a Linux desde Windows.
Pero me lo tomo como algo de hacer prácticas y conocimiento de resolver estos problemas con Linux. (Algún motivo tendrá).

Comandos de red de Linux para la resolución de problemas en redes

Ademas de esto, uso  dos métodos. Lo que me llama la atención es con este método el icono de red del panel no cambia su estado.
El dibujo del icono de lo que es tener conexión de red a no tenerla.

Tampoco sé por que se renombra el controlador de red. Si usamos este comando:

Para encontrar el nombre del controlador.
Código:
dmesg | grep -i eth

En mi caso me dice, en la tercera línea:  "enp4s0: renamed from eth0"

Tengo que usar enp4s0 para las operaciones, no eth0. Para conocer la versión del controlador:

( Recordar que es mi caso para el nombre)
Código:
ethtool -i enp4s0

Entonces puedo parar, iniciar y reiniciar el servicio de red. Pero esto no cambia el estado del icono de adaptador de red en la barra.
Tampoco me solucionó el problema de red lenta. Que la página cargue con demora. Red si logro tener indiscutiblemente.
Cita:- Verifica estado de un servicio:

systemctl status networking.service

- Indica si está activo o no.

systemctl is-active networking.service

- Muestra dependencias de un servicio:

systemctl list-dependencies networking.service

- Iniciar un servicio:

systemctl start networking.service

- Detener un servicio:

systemctl stop networking.service

- Reiniciar un servicio

systemctl restart networking.service

- Recarga cambios en la configuración de un servicio (aplica cambios en la configuración del servicio sin reiniciarlo)

Y ademas, que este si que cambia el estado del dibujo del adaptador de red: ( Al bajar o levantar el interfaz de red ).

Tenemos un comando que nos da la misma salida que ifconfig:

Código:
ip addr list

Para bajar la red ( recordar que mi caso eth0 se llama "enp4s0" ) tenéis que sustituirlo por el vuestro.

Código:
ip link set enp4s0 down

Y para subirla:

Código:
ip link set enp4s0 up

Esos dos últimos si que modifican en el panel el estado del adaptador de red. Cosa que no hace systemctl.
Existen algunos comandos más, pero son los principales los de arriba.

Ya me contareis si os habéis encontrado alguna vez, problemas con el adaptador de red eth.

A veces aunque funcione correctamente no deja de existir algún problema ajena a tu red, lo puedes ver con traceroute. (el tema de los asteriscos ).
Cita:Al usar el comando traceroute, puedes identificar cuellos de botella en la red. Los asteriscos que se muestran aquí significa que hay un problema potencial en el enrutamiento para ese host, ya que los asteriscos indican la pérdida de paquetes.

Ah, por cierto,del comando traceorute tenemos dos opciones para instalar.

Tenemos el paquete traceroute y el paquete inetutils-traceroute. Fijaros en las descripciones.

traceroute:
 
Cita: 
La utilidad traceroute muestra la ruta que usan los paquetes IP en su
camino a un sistema de red (o Internet). Traceroute muestra el número IP y
el nombre del sistema (si puede) de las máquinas de la ruta que toman los
paquetes. Traceroute se usa como herramienta de depuración de red. Si
tiene problemas de conectividad con una red, traceroute le mostrará de
dónde viene el problema en la ruta.

Instale traceroute si necesita una herramienta para diagnosticar problemas
de conectividad de red.

y inetutils-traceroute
 
Cita: 
The traceroute utility displays the route taken by IP packets on their
way to another host or another network.

Install this package if you need a tool to examine network connectivity
or to diagnose network problems.

Para mi que en parte son lo mismo, pero versiones distintas.

Saludos
Páginas (571):    1 339 340 341 342 343 571   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 310
Último miembro: MARQUITOS6767
Temas del foro: 1,761
Mensajes del foro: 9,153
Últimos temas
Problema con el repósito ...
Foro: Instalación
Último mensaje por: guizans, 14-04-2026, 21:38
Respuestas: 2 - Vistas: 338
UEFI y BIOS
Foro: Hardware & IoT
Último mensaje por: guizans, 13-04-2026, 21:22
Respuestas: 3 - Vistas: 2,501
Visual Studio Code con Ga...
Foro: General
Último mensaje por: guizans, 07-03-2026, 14:24
Respuestas: 2 - Vistas: 726
WebForm con mysql gridvie...
Foro: WebApp/WebForms
Último mensaje por: vjarvelo, 03-03-2026, 16:32
Respuestas: 2 - Vistas: 3,375
Sobre la proteccion del c...
Foro: General
Último mensaje por: Shordi, 19-02-2026, 11:07
Respuestas: 7 - Vistas: 1,309
Powered By MyBB, © 2002-2026 MyBB Group.
Made with by Curves UI.