| |
|
861
|
Programación / .NET (C#, VB.NET, ASP) / (SOLUCIONADO) Como usar un string en la propiedad ROOTFOLDER de un dialogo?
|
en: 23 Noviembre 2012, 14:37 pm
|
Hola, Lo que necesito es usar un string, por ejemplo "C:\Carpeta" en la propiedad .RootFolder del FolderBrowserDialog, que usa una enumeración. He intentado crear mi propia enumeración, pero no lo consigo... algo estaré haciendo mal: Enum lastfolder last = "C:\carpeta" End Enum
Public Sub C1Button3_Click(sender As Object, e As EventArgs) Handles folderbutton.Click Dim folderselect As New VistaFolderBrowserDialog folderselect.RootFolder = lastfolder.last folderselect.ShowNewFolderButton = True ... End Sub
|
|
|
|
|
862
|
Programación / .NET (C#, VB.NET, ASP) / (Solucionado) Problema visual con la imagen de fondo del form...
|
en: 22 Noviembre 2012, 17:05 pm
|
¿Porque pasa esto? Este es el diseño de la app:  Y esto es lo que sucede si muevo el scroll hacia abajo (o hacia arriba)  La imagen de fondo la usa el form, el panel tiene un "backcolor" transparente, y en fin yo creo que la mezcla de coloresy transparentes y todo eos lo he configurado bien... si necesitan más información al respecto pidanme... EDITO: He probado lo siguiente, pero solo da resultado si PINCHO en el scroll para moverlo, es decir, si uso la rueda del ratón el evento no se ejecuta...¿Como puedo reproducir este evento para la rueda dle ratón?... Private Sub Panel1_Scroll(sender As Object, e As ScrollEventArgs) Handles Panel1.Scroll Me.BackgroundImage = My.Resources.blue_music_2961____copia End Sub End Class
|
|
|
|
|
863
|
Programación / .NET (C#, VB.NET, ASP) / (solucionado) Problemas de acceso en un archivo de texto
|
en: 22 Noviembre 2012, 11:30 am
|
Tengo problemas al intentar escribir datos en un archivo de texto... Cualquier ayuda, se agradece! Las líneas del problema: If System. IO. File. Exists(Temp_file ) = True Then System. IO. File. Delete(Temp_file ) System. IO. File. Create(Temp_file )
( Cualquiera de las dos líneas, si elimino una, me da el mismo error en la otra, pero el archivo si que me lo llega a crear (vacío) ) El error: The process cannot access the file 'C:\Users\Administrador\AppData\Local\Temp\PlayList_temp.txt' because it is being used by another process. El sub: Public Sub C1Button2_Click(sender As Object, e As EventArgs) Handles Button1.Click If Not playerargs = Nothing Then Dim Str As String Dim Pattern As String = ControlChars.Quote Dim ArgsArray() As String Dim Temp_file As String = System.IO.Path.GetTempPath & "\PlayList_temp.txt" Dim objWriter As New System.IO.StreamWriter(Temp_file) Str = Replace(playerargs, " " & ControlChars.Quote, "") ArgsArray = Split(Str, Pattern) If System. IO. File. Exists(Temp_file ) = True Then System. IO. File. Delete(Temp_file ) System. IO. File. Create(Temp_file ) Dim di As New IO. DirectoryInfo(folder) Dim files As IO. FileInfo() = di. GetFiles("*") ' command to writleline 'Console.WriteLine("File Name: {0}", file.Name) 'Console.WriteLine("File Full Name: {0}", file.FullName) objWriter. Write(file. FullName) objWriter.Close() Next End If Next If randomize.Checked = True Then RandomiseFile(Temp_file) End If Process.Start(userSelectedPlayerFilePath, playerargs) If autoclose.Checked = True Then Me.Close() End If Else MessageBox.Show("You must select at least one folder...", My.Settings.APPName) End If End Sub
EDITO: Ya está, solucionado: .... If Not playerargs = Nothing Then .... Dim Temp_file As String = System.IO.Path.GetTempPath & "\PlayList_temp.txt" Using objWriter As New System.IO.StreamWriter(Temp_file, false) Dim di As New IO. DirectoryInfo(folder) Dim files As IO. FileInfo() = di. GetFiles("*") ' command to writleline 'Console.WriteLine("File Name: {0}", file.Name) 'Console.WriteLine("File Full Name: {0}", file.FullName) objWriter. Write(file. FullName) ' objWriter.Close() Next End If Next End Using ' Flush, close and dispose the objWriter ....
|
|
|
|
|
864
|
Programación / .NET (C#, VB.NET, ASP) / (Solucionado) separar un string en varias cadenas (Split)
|
en: 22 Noviembre 2012, 00:46 am
|
Hola, En mi form, creo una variable que contiene un string, que más tarde usaré en un botón para lanzar una app externa con los argumentos que previamente estan guardados en mi variable. El contenido de la variable es este: Winamp.exe "Argumento 1" "argumento 2" "argumento 3" "más argumentos"
PD: Los argumentos son rutas de carpetas. Y lo que quisiera hacer es un split para obtener cada argumento, osea, cada carpeta que está encerrada en comillas,y hacer algo así: ' Pseudocode For each folder in var.split(ControlChars.Quote) for each file in get.folder.files appendline.(archivo_de_Texto, file.Name) Next
¿Como puedo hacer ese split en VB? EDITO: He intentadoe sto, pero me dice que hay caracteres ilegales... :S Dim entries = playerargs.Split(" "c) For n As Integer = 1 To entries.Length - 1 Dim files As String() = Directory. GetFiles(entries (n )) Next
|
|
|
|
|
865
|
Programación / .NET (C#, VB.NET, ASP) / Como aplicar cambios al registro y refrescar el sistema sin tener que reiniciar?
|
en: 21 Noviembre 2012, 19:17 pm
|
Hola, Como sabreis.. hay muchisimos programas que hacen cambios en el registro (TuneUp por ejemplo) y los cambios tienen efecto enseguida sin necesidad de reiniciar el PC, Si algunos de esos cambios se hicieran manualmente (batch, o añadiendo la clave desde el regedit) habría que reiniciar la sesión del usuario o el pc para que los cambios surgieran efecto... Pues yo necesito añadir esta clave al registro: My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "HideDrivesWithNoMedia", 1, Microsoft.Win32.RegistryValueKind.DWord)
Y lo que me gustaría es hacer un "system refresh" para que los cambios de esa clave tengan efecto sin tener que reiniciar...
Encontré este ejemplo en C# pero no tengo ni idea de lo que hace, ni tampoco sé si esto sirve para mi propósito. static class SafeNativeMethods { public static IntPtr HWND_BROADCAST = (IntPtr)0xffff; public static int WM_WININICHANGE = 0x001A; [DllImport("User32.Dll")] public static extern bool PostMessage(IntPtr hWnd, int Msg, int wParam, int lParam); } public static class Refresher { public static void ReloadSettings() { SafeNativeMethods.PostMessage(SafeNativeMethods.HWND_BROADCAST, SafeNativeMethods.WM_WININICHANGE, 0, 5000); } } static void ExWin() { Refresher.ReloadSettings(); Application.Run(form); }
|
|
|
|
|
867
|
Programación / .NET (C#, VB.NET, ASP) / Cuando compilo mi aplicación, no funciona.
|
en: 21 Noviembre 2012, 16:27 pm
|
Cuando compilo la app y la ejecuto me sale esto:  Pero cuando ejecuto la app desde el IDE no me sale ningún error (Bueno, menos en la consola, me sale una excepción en rojo) pero el programa funciona perfectamente apesar de esa excepción... ¿Hay alguna manera de evitar que salga esa ventana sin tener que investigar dentro del código del form?
|
|
|
|
|
868
|
Programación / .NET (C#, VB.NET, ASP) / (SOLUCIONADO) AllowDrop... como narices usarlo?
|
en: 21 Noviembre 2012, 15:01 pm
|
Hola, ¿Alguien podría darme un ejemplo de como se puede arrastrar una carpeta a un textbox en un winform? Parece que no es suficiente con la propiedad AllowDrop = True ... y esto tampoco: ' Start a drag. foldertextbox.DoDragDrop( _ foldertextbox.Text, _ DragDropEffects.Copy)
Muchas gracias
|
|
|
|
|
869
|
Programación / .NET (C#, VB.NET, ASP) / (solucionado) Buscar control dentro del form...
|
en: 21 Noviembre 2012, 12:41 pm
|
He probado así: If Me.FindControl("Checkbox1") IsNot Nothing Then
'FindControl' is not a member of 'WindowsApplication19.Form1' Y así: If Me.Panel1.Contains("Checkbox1") = False Then
Value of type 'String' cannot be converted to 'System.Windows.Forms.Control'. EDITO: Es un winform ¿Soluciones porfavor?
|
|
|
|
|
870
|
Programación / .NET (C#, VB.NET, ASP) / (Solucionado) Como darle focus a un item al abrir el form
|
en: 21 Noviembre 2012, 10:11 am
|
Hola,  Los checkboxes de ese form los tengo dentro de un panel, y lo que quiero es que al ejecutar la app poder usar el scroll del mouse para bajar/subir la barra del scroll sin tener que pinchar en un checkbox primero. No se si lo que debo cambiar es lo del focus, o el tabindex, o las dos cosas, pero he intentado cambiandole el tabindex a los checkboxes y no me funciona: With mcheck(i) .AutoSize = True .TabIndex = 0 .Location = New Point(0, i * 20) .Name = "CheckBox" & i + 1 End With
¿O quizás a lo que debo darle focus/tabindex es al panel y no a los checkboxes? De todas formas el tabindex del panel también lo puse a "0" No se si el problema es que le doy un valor de "0" a todos los elementos y por eso no me funciona... EDITO: Cuando abro mi form, y le doy a la tecla "TAB", se pone el foco en el primer checkbox de todos, así que creo que no debo ir por muy mal camino... pero algo me falta. EDITO 2: la scrollbar del panel no la he creado yo, la hago con la propiedad "autoscroll" del panel... Un saludo
|
|
|
|
|
|
| |
|