Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Mohicano

#31
Imagino que si lo haces así, tarde o temprano tendrás la necesidad de mover el form sin bordes arrastrando el ratón, así que por si acaso te sirve te dejo una solución para eso:

Cita de: https://stackoverflow.com/a/64698815/1248295Dim InitialMouseDownLocation As Point

Private Sub Panel1_MouseDown(sender As Object, e As MouseEventArgs) Handles Panel1.MouseDown
   If e.Button = MouseButtons.Left Then
       InitialMouseDownLocation = e.Location
       Cursor.Current = Cursors.NoMove2D
   End If
End Sub

Private Sub Panel1_MouseMove(sender As Object, e As MouseEventArgs) Handles Panel1.MouseMove
   If e.Button = MouseButtons.Left Then
       Location = New Point(Location.X - InitialMouseDownLocation.X + e.X, Location.Y - InitialMouseDownLocation.Y + e.Y)
   End If
End Sub

Private Sub Panel1_MouseUp(sender As Object, e As MouseEventArgs) Handles Panel1.MouseUp
   Cursor.Current = Cursors.Default
End Sub


PD: Donde pone: 'Handles Panel1.MouseDown', 'Handles Panel1.MouseMove' y 'Handles Panel1.MouseUp' puedes añadir a la derecha de estos separados por una coma el nombre del form y de todos los controles que quieras que sirvan para arrastrar el form.
#32
Cita de: juanedwinno entendi mucho tu respuesta

Cita de: juanedwin"al momento de crearlo darle una posicion left o top algo asi, pero no encuentro los left y top o que otro comando es"

Mi respuesta (el código que te mostré) pretendía darte la solución a esa duda para poder obtener la ubicación (left, top) del elemento en tiempo de ejecución. Pero haciéndolo desde WPF.

Al Grid que tienes actualmente podrías añadirle un Canvas, ya que este te facilitaría y simplificaría la tarea de posicionar controles como lo indica en la propia descripción: "Defines an area within which you can explicitly position child elements by using coordinates that are relative to the Canvas area."

Es decir:
Public Class UserControl1

   Public Sub AgregarControl(ByVal Objeto As String) ' la variable objeto es para poner distintos controles segun la peticion
       Dim b As New Button With {.Background = Brushes.Crimson, .Width = 20, .Height = 10, .Tag = 1}
       b.VerticalAlignment = Rnd(2)
       ' Grid1.Children.Add(b)
       Canvas1.Children.Add(b)
   End Sub

End Class


Y entonces, para posicionar el user-control desde WindowsForms:
...
ElementHost1.Child = wpfButton
...

Dim element As UIElement = wpfButton
Dim position As New System.Drawing.Point(10, 10)
System.Windows.Controls.Canvas.SetLeft(element, CDbl(position.X))
System.Windows.Controls.Canvas.SetTop(element, CDbl(position.Y))


Ten en cuenta que ese código no te va a funcionar sin un Canvas.

Si prefieres no usar un Canvas y mantener el código actual de tu grid, entonces puedes usar la propiedad FrameworkElement.Margin, aunque no la he probado en todos los escenarios posibles...

He escrito un par de métodos / extensiones reutilizables para simplificarlo:

Public Module FrameworkElementExtensions

   ' Gets the coordinates of the source <see cref="FrameworkElement"/> element relative to its <see cref="ElementHost"/> container.
   <Extension>
   Public Function GetLocation(element As FrameworkElement) As System.Drawing.Point
       Return New System.Drawing.Point(element.Margin.Left, element.Margin.Top)
   End Function

   ' Sets the coordinates of the source <see cref="FrameworkElement"/> element relative to its <see cref="ElementHost"/> container.
   <Extension>
   Public Sub SetLocation(element As FrameworkElement, position As System.Drawing.Point)
       element.Margin = New Thickness(position.X, position.Y, element.Margin.Right, element.Margin.Bottom)
   End Sub

End Module


Esos métodos asumen que la propiedad Margin siempre devolverá el valor esperado, pero como ya digo no estoy del todo convencido de que vaya a ser así, dependiendo de factores que desconozco de la composición y alineación de los componentes de un Grid (yo prácticamente no programo nada en WPF).

Ejemplo desde WindowsForms:
...
ElementHost1.Child = wpfButton
wpfButton.SetLocation(New System.Drawing.Point(10, 10))
Debug.WriteLine(wpfButton.GetLocation())
...
#33
Cita de: https://code.visualstudio.com/docs/supporting/FAQ¿Cuál es la diferencia entre Visual Studio Code y Visual Studio IDE?

Visual Studio Code es un editor de código optimizado con soporte para operaciones de desarrollo como depuración, ejecución de tareas y control de versiones.
Su objetivo es proporcionar solo las herramientas que un desarrollador necesita para un ciclo rápido de código, compilación y depuración, y dejar los flujos de trabajos más complejos a una IDE con funciones más completas, como Visual Studio IDE.

Lo subrayado es lo importante y autoconcluyente para la pregunta: "¿se puede programar bien en visual studio code o que otra puedo usar?". La respuesta es que todo depende de si le vas a dar a VS Code el uso para el que está optimizado, o si por lo contrario y por ejemplo pretendes desarrollar una aplicación con interfaz gráfica, lo cual puedes hacerlo con un editor de código pero te llevaría 20 veces más tiempo y enredos que hacerlo con las funcionalidades de una IDE y su diseñador de interfaces.
#34
El framework comercial de Telerik, tanto para WinForms como para WPF provee un tema visual con apariencia de Visual Studio 2019. Probablemente haya alternativas gratuitas y open source de un tema con apariencia de Visual Studio 2019, al menos para WPF, sería cosa de buscarlo.

Pero lo de colocar la barra de menues o toolstrip en la barra de título es otro cantar...

Para WindowsForms hay un par de formas, la primera y más sencilla sería simular una barra de título, es decir primero ocultas por completo la barra de título y los bordes del form ('Form.FormBorderStyle = None') y luego creas y añades un botón de cerrar, minimizar y etc en la parte superior del area cliente de tu form.

La segunda y más sofisticada forma de hacerlo sería extendiendo la composición de la barra de título al area cliente del form, entre otras cosas:

Cita de: https://social.msdn.microsoft.com/Forums/vstudio/en-US/392c9625-8df2-4ffa-899b-380d01241076/toolbar-in-the-form-titlebar?forum=vbgeneral

Este ejemplo (la respuesta aceptada) no lo he probado pero parece cumplir dicho cometido:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/349d5d86-3b59-4116-9c5b-f5240f1bed4d/how-to-add-a-control-to-the-non-client-area-of-a-custom-form?forum=winforms

Puede que estas alternativas también te sirvan:

https://stackoverflow.com/questions/25070842/extend-non-client-area-on-form-with-custom-drawn-titlebar
https://www.codeproject.com/Articles/93959/WinForm-Extended
#35
La solución óptima es distinta según que tecnología vayas a usar (WindowsForms, WPF, etc...)

En WindowsForms directamente hay muy pocas opciones, o bien te limitas a utilizar las propiedades de personalización del control, o diseñas tu control desde cero para darle forma y color deseado, o utilizas un framework de los tantos que hay (Telerik, Bunifu UI, etc) cuyos controles son bastante personalizables en su apariencia.

En WPF puedes usar temas y estilos, como estos:
https://github.com/Carlos487/awesome-wpf#themes
o también puedes utilizar frameworks con controles hyper-personalizables como el del ya mencionado Telerik.
#36
Puedes añadir un controlador para el evento WebBrowser.NewWindow. Ejemplo:

Public Class Form1

   Private ReadOnly form2 As New Form

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

       WebBrowser1.ScriptErrorsSuppressed = True
       WebBrowser1.Navigate("https://foro.elhacker.net/")

   End Sub


   Private Sub WebBrowser1_NewWindow(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles WebBrowser1.NewWindow

       form2.Show()
       Me.Hide()

   End Sub

End Class

#37
En WPF puedes probar lo siguiente:

Private Function GetBoundingBox(ByVal element As FrameworkElement, ByVal containerWindow As Window) As Rect
   Dim transform As GeneralTransform = element.TransformToAncestor(containerWindow)
   Dim topLeft As Point = transform.Transform(New Point(0, 0))
   Dim bottomRight As Point = transform.Transform(New Point(element.ActualWidth, element.ActualHeight))
   Return New Rect(topLeft, bottomRight)
End Function


CÓDIGO MEJORADO:

    Private Function GetBoundingBox(element As FrameworkElement) As Rect
        Dim containerWindow As Window = Window.GetWindow(element)
        Dim transformer As GeneralTransform = element.TransformToAncestor(containerWindow)
        Dim topLeft As Point = transformer.Transform(New Point())
        Dim bottomRight As Point = transformer.Transform(element.RenderSize)
        Return New Rect(topLeft, bottomRight)
    End Function


EJEMPLO:
Dim element As FrameworkElement = Me.Button1
Dim rc As Rect = GetBoundingBox(element)
Console.WriteLine($"Size: {{Width:{rc.Size.Width}, Height:{rc.Size.Height}}}; Location: {{X:{rc.Location.X}, Y:{rc.Location.Y}}}")


Código en C#:
https://social.msdn.microsoft.com/Forums/en-US/ce88562e-4195-45f2-ac1c-4571279a84a3/wpf-equivalent-for-windows-forms-controlclientrectangle-property?forum=wpf

Y otra posible solución:
https://stackoverflow.com/a/11079520/1248295
(lee los comentarios de esa respuesta si no te funciona)

Para Windowsforms puedes utilizar la propiedad Control.Bounds que contiene el tamaño (Control.Size) y la ubicación relativa (Control.Location):

https://docs.microsoft.com/es-es/dotnet/api/system.windows.forms.control.bounds?view=windowsdesktop-6.0

Otras propiedades de interés y utilidad son Control.ClientRectangle y Control.DisplayRectangle:

https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.control.clientrectangle?view=windowsdesktop-6.0
https://docs.microsoft.com/es-es/dotnet/api/system.windows.forms.control.displayrectangle?view=windowsdesktop-6.0
#38
Cita de: crazykenny en 25 Marzo 2021, 14:24 PM
quisiera recordarte que el foro libre esta para poder crear temas que no tienen cabida en otras secciones del foro, por no decir que el tema que has creado no cumple con esta condición y por este motivo ha sido movido a la sección correspondiente.

Permíteme recordarte yo algo que acabo de escribir hace un rato:

CitarEs curioso, yo me pregunto: ¿por que se mueve solo mi hilo?, puesto que nunca se ha visto a un moderador o coadmin que movieran los demás hilos donde se mencionan invitaciones a chats, a grupos de steam, de discord, etc. Vamos, si quieren hago una búsqueda en el foro y les dejo aquí un pequeño listado de 20 o 50 hilos (todos los que me aparezcan en los resultados) para que ustedes los moderen de la misma manera como han "moderado" mi hilo, aplicando la misma vara de medir. ¿Pero eso no lo van a hacer, verdad?, solamente el hilo que ha sido publicado por Elektro no se merece estar en el foro libre, hay que invisibilizarlo.

El problema Uno de los problemas es la incongruencia de alguno(s), por no llamaro hipocresía, imparcialidad, persecución, acoso cibernético en la sombra, o como prefieran llamarlo, yo tengo muchos nombres para referirme a todo lo que me han hecho y siguen haciéndome SOLO A MI, y mira que hay usuarios, usuarios que de verdad hemos visto infringir las normas, y a mi me banean o me sancionan o me perjudican o me invisibilizan solo por dar los buenos días.
#39
Cita de: MinusFour en 25 Marzo 2021, 13:48 PM
No tiene nada que ver con que si eres malo o lo que sea, sino que estás rompiendo las reglas.

Pero un coadmin si que puede romper las reglas a su conveniencia para banear y degradar de rango a un moderador global (está prohibido, solo el-brujo tenía potestad para hacerlo, o al menos eso es lo que él dijo).

Y luego otro coadmin puede volver a romper esas mismas reglas para banear permanente a la misma persona, y sin ofrecer explicación ni motivo, e insultando y burlandose de forma ofensiva reiteradamente mediante el correo de elhacker, yo sin saber por que motivo de esas agresiones verbales y esas burlas y comentarios ofensivos hacia mi persona, y mientras tanto el admin (el-brujo) observando la converación, siendo espectador de toda esta persecución hacia mi, como si fuese lo más normal del mundo que un coadmin haga eso y se comporte de esa forma con otra persona (ya no quiero decir con Elektro el ex-colaborador y moderador global con miles de mensajes aportados al foro, no, sino con UNA PERSONA), un coadmin haciendo esas cosas de impresentable, con el admin presente, y este dando el visto bueno a todo. Que desagradable puede ser alguna gente.

Todo muy lógico y normal, aquí las reglas del foro se llaman reglas por que algún nombre hay que darles para quedar bien, pero lo cierto es que a algunos se nos aplica a conveniencia del moderador, con la interpretación que le quieran dar según el usuario y las circunstancias, y con menor o mayor severidad dependiendo de lo bien que le caigas o lo mucho que hayas discutido con él en el pasado.

Ah, y no olvidemos el ban pseudo-permanente de WHK de 365 días de duración, ni uno más, ni uno menos. Joder, cada vez que estos coádmines me banean se deben echar unas risas por la forma en la que lo hacen trolleando...

O quizás estás pensando como yo en el chiste de la imagen que compartí en la que DRVY sugiere que los usuarios tienen el derecho a contactar mediante el correo de @elhacker para exponer sus quejas sobre una acción de moderación, pero el muy pillo lo que no dice es que si eres Elektro y envias un correo para ejercer ese derecho, me volverá a banear de forma instantanea.

Las mismas reglas y derechos para todos, neutralidad absoluta. Por supuesto que si.

El hecho de permitirme utilizar esta cuenta de usuario (hasta que me la baneen, que lo harán), cuenta QUE YO NO DEBERÍA ESTAR UTILIZANDO SI NO FUESE POR QUE ME BANEARON de la forma en la que lo hicieron, es lo mínimo, LO MÍNIMO que deben permitir para intentar compensar todas sus malas aciones y decisiones sobre mi persona.

Un saludo!
#40
Buenas.

Con respecto a este hilo el cual ha sido movido del foro libre al de música y juegos: https://foro.elhacker.net/series_peliculas_musica_juegos_programas/estan_todos_invitados_a_mi_canal_de_telegram_14_tb_de_contenido-t509544.0.html

¿Alguien del staff podría explicarme cual es la diferencia entre directamente eliminar el hilo, a invisivilizarlo en un subforo que requiere registro y donde a duras penas hay una audiencia de 4 gatos?, literalmente hablando hay hilos de noviembre 2020 con cuatro visitas...

En realidad, y fuera del sarcasmo, por que yo ya todo este choteo que solo lo aplican conmigo me lo tomo a risa (por no llorar), en realidad lo que estoy pidiendo es que, si pudiera ser posible, que me expliquen cual es el ranzonamiento detrás de la decisión que han tomado, por que motivo se ha movido el hilo a otro subforo cuando ese hilo no inflinge ninguna regla. Y de infringirla, entonces prefiero que se me conceda la oportunidad de hacer las modificaciones pertinentes en el texto de ese hilo para que deje de infringir la regla que sea, y que así se pueda mover el hilo al foro libre.

Es curioso, yo me pregunto: ¿por que se mueve solo mi hilo?, puesto que nunca se ha visto a un moderador o coadmin que movieran los demás hilos donde se mencionan invitaciones a chats, a grupos de steam, de discord, etc. Vamos, si quieren hago una búsqueda en el foro y les dejo aquí un pequeño listado de 20 o 50 hilos (todos los que me aparezcan en los resultados) para que ustedes los moderen de la misma manera como han "moderado" mi hilo, aplicando la misma vara de medir. ¿Pero eso no lo van a hacer, verdad?, solamente el hilo que ha sido publicado por Elektro no se merece estar en el foro libre, hay que invisibilizarlo.

Genial, como siempre, la objetividad y la imparcialidad son las virtudes que definen la forma que algunos tienen de moderar, o mejor dicho de aplicar su moderación personalizada conmigo.

Se que esta petición es en vano ya que encontrarán cualquier excusa para intentar defender sus argumentos e intentarán ridiculizar los mios, ya hemos pasado por esto en demasiadas ocasiones y ya sabemos que a mi no se me concede ni el derecho a escribir una queja. Pero bueno, tengo el derecho a quejarme, y mientras exista ese derecho no voy a deshacerme de él para poner en evidencia la falta de neutralidad al aplicar ciertas "moderaciones" sobre mi usuario.




Por favor, y antes de que me acusen por enésima vez de hacer flame y blah blah elektro es un troll blah blah, téngase en cuenta que antes de abrir esta queja he considerado por un instante seguir las indicaciones que DVRY propuso en otro hilo:



...hasta que me acordé que la última vez que envié un correo a esa dirección con toda mi buena voluntad y mi inocencia e ingenuidad tan solo para solicitar que se reconsidere una sanción de 10 días que me puso un moderador, me acabaron baneando de forma permanente la cuenta de "Mr.NoBody", y probablemente fue por el mismo coadmin que en ese comentario nos sugiere el chiste de enviar un correo a dicha dirección para quejarse, pues eso, fue un baneo sin tan siquiera ofrecerme explicación ni motivo alguno, de forma totalmente injustificada... para no variar, por que Elektro es muy malo y haga lo que haga hay que perseguir y castigar sus actos.

Así que prefiero hacer pública esta queja publicando este hilo, donde yo les he comentado lo que pienso al respecto de un par de cosas, y les solicito que se reconsidere mover mi hilo al foro libre y dejarlo quieto en ese lugar, y ya ustedes hagan o respondan lo que quieran o me banean esta cuenta reutilizando y desgastando la excusa de siempre, que me imagino que la excusa será que siempre estoy discutiendo y creando problemas, ¿por que nadie me da motivos para tener que abrir este tipo de hilos, verdad que no?. Si a mi me dejasen en paz, yo dejaría en paz a todo el mundo, que es lo que ya hice desde el día uno con la cuenta de "Mr.NoBody", pero ustedes no están conforme nunca con nada, ni cuando Elektro se registra en el foro una cuenta en la que no hace nada malo ni menciona a nadie de ustedes, ni cuando el mismo Elektro se cabrea y enciende la mecha publicando hilos para quejarse con mucho fundamento.

Saludos!