Oppure

Loading
02/04/09 10:53
dedalux
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 02/04/09 13:22
aaa
02/04/09 11:07
ruggy94
:rofl: di certo non è normale...posta il codice e vediamo se si può migliorare
aaa
02/04/09 11:10
dedalux
:D il problema è che nn saprei quale parte del codice postare :D

posto il codice che viene avviato al click del button

Public Sub TentaAvvio()

        On Error Resume Next

        If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then

            If Form1.CheckBox1.Checked = True Then

                Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
                NascondiRoba()
                Form1.WindowState = FormWindowState.Minimized

            ElseIf Form1.CheckBox1.Checked = False Then

                Dim warrealm As String = My.Application.Info.DirectoryPath & "\Realmlist.wtf"
                Dim datarealm As String = My.Application.Info.DirectoryPath & "\Data\enGB\Realmlist.wtf"

                Dim x As String
                x = Form1.Lista.FocusedItem.SubItems(1).Text

                IO.File.WriteAllText(warrealm, "set realmlist " & x.ToString)
                IO.File.WriteAllText(datarealm, "set realmlist " & x.ToString)
                Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
                NascondiRoba()
                Form1.WindowState = FormWindowState.Minimized

            End If
        Else
            MessageBox.Show("bla bla bla", "bla bla bla", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
        End If

Ultima modifica effettuata da dedalux 02/04/09 11:13
aaa
02/04/09 11:27
ruggy94
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:
aaa
02/04/09 12:00
dedalux
si ci avevo pensato a farlo prima. poi pero mi son dimenticato preso da altri pensieri XD
comunque
Public Sub NascondiRoba()
        With Form1
            .btnLista.Text = "Mostra Lista"
            .Lista.Visible = False
            .btnAggiungiServer.Visible = False
            .btnRimuoviServer.Visible = False
            .btnView1.Visible = False
            .btnView2.Visible = False
            .btnView3.Visible = False
            .btnVie


P.S. si è world of warcraft
aaa
02/04/09 12:42
ruggy94
Ho scritto il codice con quella modificae l'ho anche semplificato un po'

Public Sub TentaAvvio()

        On Error Resume Next

        If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then

            If Form1.CheckBox1.Checked = False Then

                Dim warrealm As String = My.Application.Info.DirectoryPath & "\Realmlist.wtf"
                Dim datarealm As String = My.Application.Info.DirectoryPath & "\Data\enGB\Realmlist.wtf"

                Dim x As String
                x = Form1.Lista.FocusedItem.SubItems(1).Text

                IO.File.WriteAllText(warrealm, "set realmlist " & x.ToString)
                IO.File.WriteAllText(datarealm, "set realmlist " & x.ToString)
            End If

            NascondiRoba()
            Form1.WindowState = FormWindowState.Minimized
            Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)

        Else
            MessageBox.Show("bla bla bla", "bla bla bla", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1)
        End If
aaa
02/04/09 13:19
dedalux
Ti ringrazio cmq sono riuscito a risolvere cosi

If IO.File.Exists(My.Application.Info.DirectoryPath.ToString & "\Wow.exe") = True Then
            NascondiRoba()
            If Form1.CheckBox1.Checked = True Then

                Shell(My.Application.Info.DirectoryPath.ToString & "\Wow.exe", AppWinStyle.MaximizedFocus)
                NascondiRoba()
                
            ElseIf Form1.CheckBox1.Checked = False Then
            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 02/04/09 13:20
aaa
02/04/09 16:02
fabriziorocca
anche io ho avuto una volta un problema del genere ...
comunque sono contento che tu abbia trovato la soluzione (il codice) per risolverlo !
aaa