1
Vote

Poprawne wczytywanie formatu pliku do okna ustawień

description

Znalazlem wreszcie sposob na poprawne ladowanie rozszerzenia pliku. Trzeba to ustawic przy inicjalizacji komponentu. Postaram sie jakos wprowadzic te zmiane.

comments

pawelgdn wrote Apr 12, 2015 at 7:49 PM

W zasadzie zeby to poprawić trzeba wykonać jedną-dwie zmiany, ale w 2 innych miejscach wypadałoby wyczyścić kod:

A. W Form2.Designer.vb w okolicy linii 92, zamiast:
Me.ComboBox1.Text = "jpeg"
Powinno być:
Me.ComboBox1.Text = Module1.format
B. W Form1.vb w okolicy linii 92 trzeba zakomentować lub usunąć poniższe 2 linijki
        rozszerzenie = "jpg"
        format = "jpeg"
C. W Form1.vb w okolicach linii 894 można usunąć cały poniższy fragment:
Dim combobox1index As Integer
Dim last As Integer

combobox1index = 0

last = Form2.ComboBox1.Items.Count - 1
Do Until Form2.ComboBox1.Items.Item(combobox1index) = formatNaProbe Or combobox1index < last
    combobox1index = combobox1index + 1
Loop

Form2.ComboBox1.SelectedIndex = combobox1index
D. W Form2.vb w okolicach linii 72 należy zamienić ten kod:
ComboBox1.Text = Module1.format
Na poniższy komentarz
'ustawienie odpowiedniej warosci Combobox1 odbywa sie przy jego inicjalizacji
To by było na tyle.

Kazik_ wrote Apr 13, 2015 at 4:19 PM

Dziękuję za przesłanie poprawek. Wprowadziłem je do kodu źródłowego, paczkę z plikiem exe zaktualizuje po uzbieraniu jeszcze innych modyfikacji. Sprawdziłem działanie programu po tych zmianach. Nareszcie wczytuje poprawnie rozszerzenie z ostatniej sesji :)

Niestety dotychczasowy komunikat informujący o zmianie formatu nie zachowuje się właściwie i tymczasowo go zakomendowalem. Przy ponownym uruchomieniu programu na starej sesji wyskakiwał on każdorazowo, nawet gdy "formatNaProbe" byl zgodny z wartością "Module1.format". Odniosłem wrażenie ze przy kolejnym uruchamianiu programu, "Module1.format" nie odczytywał danych z form2.combobox1 po automatycznym wczytaniu parametrów z conf.txt

Ten komunikat siedzi w Form1.vb w rejonie wierszy nr 889-894
 If formatNaProbe <> Module1.format Then
            'MsgBox("Ustawiłeś rozszerzenie pobieranych plików na " & "." & Module1.format & Chr(13) & Chr(10) & _
            '"podczas gdy rozszerzenie z wczytanej sesji to " & "." & formatNaProbe & Chr(13) & Chr(10) & _
            'Chr(13) & Chr(10) & _
            '"Program zamienił rozszerzenie na ." & formatNaProbe, , "ZMIENIONO ROZSZERZENIE")
            Module1.format = formatNaProbe

pawelgdn wrote Apr 13, 2015 at 8:39 PM

Sluszna uwaga. Właśnie zacząłem się zastanawiać czy ten IF ma w ogóle rację bytu, skoro i tak domyślną wartością wczytanej sesji zawsze będzie JPG. Samo przypisanie Module1.format=formatNaProbe jest konieczne (trzeba by wyciagnąć z IFa), bo format nie jest nigdzie zainicjalizowany i dlatego zawsze pojawia się komunikat przy starcie. Może wystarczyłby komunikat o wczytanym formacie pliku? Wtedy chyba wypadałoby zrobić jeszcze prostą obsługę błędów (np. zły format pliku itp.).

pawelgdn wrote Apr 13, 2015 at 8:40 PM

I jeszcze w przypadku braku pliku conf.txt trzeba by zainicjalizować Module1.format np jeg'iem.