Parikon Opublikowano 18 Października 2019 Zgłoś Udostępnij Opublikowano 18 Października 2019 (edytowane) Potrzebuje rozwiązania problemu braku automatycznego dokowania od wersji 2020. W 2019 po włączeniu ZwCAD panele automatycznie się dokują zgodnie z kodem c#. A od wersji 2019.3 lub w wersji 2020 panel wyrzucony jest na bok. Nie chce zakładać oddzielnego tematu PaletaBazaZbrojenia.DockEnabled = (zzw.DockSides)((int)zzw.DockSides.Left + (int)zzw.DockSides.Right); Edytowane 18 Października 2019 przez Parikon Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 18 Października 2019 Zgłoś Udostępnij Opublikowano 18 Października 2019 Dnia 14.10.2019 o 19:48, Parikon napisał: Brak zapamiętywania ustawienia panelu to przypadłość, której nie było w ZwCAD 2019. Pojawiło się w ZwCAD 2019 Sp 3 i ZwCAD 2020 Sztuczka polega na tym, żeby ustawić np _ps.Dock = DockSides.Left; ale dopiero PO _ps.Visible = true; Czyli np: _ps = new PaletteSet("Group Manager"); _ps.DockEnabled = (DockSides)((int)DockSides.Left + (int)DockSides.Right); _ps.Visible = true; _ps.Dock = DockSides.Left; Parikon 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 18 Października 2019 Autor Zgłoś Udostępnij Opublikowano 18 Października 2019 Działa, ale teraz zawsze jest z lewej. A wcześniej jak ustawiłem z prawej i zamknąłem panel a potem znów go chciałem włączyć to dopóty nie restartowałem całego ZwCADA panel startował po prawej. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 18 Października 2019 Autor Zgłoś Udostępnij Opublikowano 18 Października 2019 Jeżeli nie da się tego naprawić po staremu, to można dać możliwość użytkownikowi wyboru strony w formie ustawień w programie. Co możecie zaimplementować też w powyższym programie. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 18 Października 2019 Zgłoś Udostępnij Opublikowano 18 Października 2019 Można dodać obsługę zdarzenia na zamknięcie palety _ps.StateChanged += new PaletteSetStateEventHandler(OnPaletteClose); Tam zapisać położenie panelu static void OnPaletteClose(object sender, PaletteSetStateEventArgs e) { if (e.NewState == StateEventIndex.Hide) { ; tutaj zapisujemy położenie panelu w jakimś "pamiętniku" np zmiennej środowiskowe. } } A przy wczytywaniu sprawdzić co jest zapisane w "pamiętniku". Parikon 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Parikon Opublikowano 19 Października 2019 Autor Zgłoś Udostępnij Opublikowano 19 Października 2019 Jest to jakieś rozwiązanie i działa. Jednakże dziwne, że nagle trzeba zmienić kod aby coś działało jak należy. Dla sprawnego oka widoczne jest, że paleta najpierw pojawia się obok, a potem dopiero jest dokowana. Przy czym objawia się to tylko po uruchomieniu ZwCAD-a. Dobrze by było to zgłosić do poprawki. Natomiast sam kod udało mi się zaimplementować z powodzeniem. static void OnPaletteClose(object sender, zzw.PaletteSetStateEventArgs e) { if (e.NewState == zzw.StateEventIndex.Hide) { if (_ps.Dock == zzw.DockSides.Left) { Settings1.Default._ps = "left"; } else { Settings1.Default._ps = "right"; } } } Dziękuję za pomoc. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 21 Października 2019 Zgłoś Udostępnij Opublikowano 21 Października 2019 Dnia 19.10.2019 o 11:50, Parikon napisał: Dobrze by było to zgłosić do poprawki Zgłoszone. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.