Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Componenti del form che si spostano da soli O.o
Forum - C# / VB.NET - [VB.NET] Componenti del form che si spostano da soli O.o

Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 12:53
Giovedì, 02/04/2009
Salve a tutti,
come da titolo io ho crato un programmino, questo programma dopo aver modificato dei file, va a lanciare un secondo programma da button, e dopo averlo lanciato si minimizza, ora succede a volte che nn si riduce nella barra applicazioni(il mio programma), ma resti invece in primo piano, spostandosi leggermente x un secondo (il movimento verso l'angolo in basso a dx di un programma che nn risponde), e dopo quell'attimo una label e una checkbox si spostano verticalmente di un po, se ripremo il button, succede la stessa cosa e i pulsanti finiscono sempre piu in alto...
E' odioso oltre che strano nn succede al resto degli elementi del form..
In piu succede raramente, che sia uno "sfasamento" grafico x l'attimo in cui viene eseguito il secondo programma? (che tra l'altro è abbastanza pesante)
:-?:-?:-?8-|8-|8-|:(:(:(

Ultima modifica effettuata da dedalux il 02/04/2009 alle 15:22
PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 13:07
Giovedì, 02/04/2009
:rofl: di certo non è normale...posta il codice e vediamo se si può migliorare

PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 13:10
Giovedì, 02/04/2009
:D il problema è che nn saprei quale parte del codice postare :D

posto il codice che viene avviato al click del button

Codice sorgente - presumibilmente VB.NET

  1. Public Sub TentaAvvio()
  2.  
  3.         On Error Resume Next
  4.  
  5.         If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then
  6.  
  7.             If Form1.CheckBox1.Checked = True Then
  8.  
  9.                 Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
  10.                 NascondiRoba()
  11.                 Form1.WindowState = FormWindowState.Minimized
  12.  
  13.             ElseIf Form1.CheckBox1.Checked = False Then
  14.  
  15.                 Dim warrealm As String = My.Application.Info.DirectoryPath & "\Realmlist.wtf"
  16.                 Dim datarealm As String = My.Application.Info.DirectoryPath & "\Data\enGB\Realmlist.wtf"
  17.  
  18.                 Dim x As String
  19.                 x = Form1.Lista.FocusedItem.SubItems(1).Text
  20.  
  21.                 IO.File.WriteAllText(warrealm, "set realmlist " & x.ToString)
  22.                 IO.File.WriteAllText(datarealm, "set realmlist " & x.ToString)
  23.                 Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
  24.                 NascondiRoba()
  25.                 Form1.WindowState = FormWindowState.Minimized
  26.  
  27.             End If
  28.         Else
  29.             MessageBox.Show("bla bla bla", "bla bla bla", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
  30.         End If



Ultima modifica effettuata da dedalux il 02/04/2009 alle 13:13
PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 13:27
Giovedì, 02/04/2009
Si, probabilmente il problema è causato dalla pesantezza di Wow.exe (sarebbe World of Warcraft??). Nel tuo codice prima avvii Wow.exe e poi riduci la finestra...sarebbe meglio fare al contrario. Prima di fare modifiche al code potresti dirmi cosa fa la sub NascondiRoba()? così vedo di sistemare meglio il codice. :k:

PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 14:00
Giovedì, 02/04/2009
si ci avevo pensato a farlo prima. poi pero mi son dimenticato preso da altri pensieri XD
comunque
Codice sorgente - presumibilmente VB.NET

  1. Public Sub NascondiRoba()
  2.         With Form1
  3.             .btnLista.Text = "Mostra Lista"
  4.             .Lista.Visible = False
  5.             .btnAggiungiServer.Visible = False
  6.             .btnRimuoviServer.Visible = False
  7.             .btnView1.Visible = False
  8.             .btnView2.Visible = False
  9.             .btnView3.Visible = False
  10.             .btnVie



P.S. si è world of warcraft

PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 14:42
Giovedì, 02/04/2009
Ho scritto il codice con quella modificae l'ho anche semplificato un po'

Codice sorgente - presumibilmente VB.NET

  1. Public Sub TentaAvvio()
  2.  
  3.         On Error Resume Next
  4.  
  5.         If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then
  6.  
  7.             If Form1.CheckBox1.Checked = False Then
  8.  
  9.                 Dim warrealm As String = My.Application.Info.DirectoryPath & "\Realmlist.wtf"
  10.                 Dim datarealm As String = My.Application.Info.DirectoryPath & "\Data\enGB\Realmlist.wtf"
  11.  
  12.                 Dim x As String
  13.                 x = Form1.Lista.FocusedItem.SubItems(1).Text
  14.  
  15.                 IO.File.WriteAllText(warrealm, "set realmlist " & x.ToString)
  16.                 IO.File.WriteAllText(datarealm, "set realmlist " & x.ToString)
  17.             End If
  18.  
  19.             NascondiRoba()
  20.             Form1.WindowState = FormWindowState.Minimized
  21.             Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
  22.  
  23.         Else
  24.             MessageBox.Show("bla bla bla", "bla bla bla", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
  25.         End If


PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 15:19
Giovedì, 02/04/2009
Ti ringrazio cmq sono riuscito a risolvere cosi

Codice sorgente - presumibilmente VB.NET

  1. If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then
  2.             NascondiRoba()
  3.             If Form1.CheckBox1.Checked = True Then
  4.  
  5.                 Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
  6.                 NascondiRoba()
  7.                
  8.             ElseIf Form1.CheckBox1.Checked = False Then
  9.             ecc ecc....



probabilmente era quell'attivo in cui il computer rallentava, ma mi chiedo su 4gb di ram cosa deve rallentare a ram libera....
cmq letteralmente i pulsanti si spostavano e funzionavano li dove si erano messi.. XD XD

Ultima modifica effettuata da dedalux il 02/04/2009 alle 15:20
PM Quote
Avatar
fabriziorocca (Normal User)
Guru


Messaggi: 1162
Iscritto: 22/03/2009

Segnala al moderatore
Postato alle 18:02
Giovedì, 02/04/2009
anche io ho avuto una volta un problema del genere ...
comunque sono contento che tu abbia trovato la soluzione (il codice) per risolverlo !

PM Quote