Forum Coders' city Strona Główna Coders' city
Nasza pasja to programowanie!
 

 PomocPomoc   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  RejestracjaRejestracja 
Archiwum starego forum + teoria    RSS & Panel/SideBar
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Potrzebuję szybkiej odpowiedzi na moje pytanie... Zasady

Szukam zespołu pasjonatów do projektu a potem realizacji programu non-profit

Idź do strony Poprzedni  1, 2, 3 ... 18, 19, 20, 21, 22, 23  Następny

 
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Visual Studio: C#, VB, VC++, …
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Sro Paź 04, 2017 12:52 pm      Temat postu: Drukowanie z WPF Odpowiedz z cytatem Pisownia

Prace posuwają się do przodu, głównie dzięki pomocy z zewnątrz.

Chciałbym poruszyć wstępnie temat wydruków z WPF. Chciałbym móc zdefiniować format papieru A4, A5 i A6 i dla takich formatów przygotowywać wydruki. Z tego co czytałem i słyszałem wynika, że jeśli chodzi o jakość wydruków to nie jest z tym dobrze w WPF. Etykietki mają fonty o rozmiarze minimalnym 4pkt. i je trzeba drukować w dobrej jakości. W pierwszej chwili pomyślałem, że może drukować np do PDF'a...

Jeśli macie jakieś doświadczenia, napiszcie proszę parę zdań.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
samolot



Dołączył: 26 Sty 2006
Posty: 8190
Skąd: Toruń

PostWysłany: Sro Paź 04, 2017 10:27 pm      Temat postu: Odpowiedz z cytatem Pisownia

Zobacz na MSDN przykład drukowania: VB.Net Printing Example/ Nie czytałem tego, ale wstępnie widzę, że autor tam pokazuje to co ja robię w VB.NET: wykorzystuje gotowe komponenty do druku.

Zobacz też opis właściwości i metod komponentu PrintPreviewDialog :PrintPreviewDialog Class on pozwala tworzyć podglądy wydruków na ekranie i poustawiać wszelkie parametry strony, wielkości i jakości czcionek, marginesów itp. oczywiście w połączeniu z innymi komponentami jak PageSetupDialog, PrintDiocument, PrintDialog, ...

Przykłady te dotyczą drukowania w VB.NET. Podobno WPF "ułatwia" wszelką grafikę w VB.NET, ale ja czytałem opinię, że WPF "miał byś dobry w te klocki", tylko, że nie wszystko w nim jest jakby dokończone, bo Microsoft wprowadził nowe wersje środowisk .NET i już nie wszystko zostało dokończone. Ale nie zniechęcam cię, piszesz w wersji WPF to pisz.
Natomiast wcześniej tworzony WB.NET jest z natury rzeczy bardziej kompletny w różne metody i właściwości.
O ile pamiętam, to obie te technologie można stosować w jedym projekcie.

_________________
Nie zadawaj bezcelowych pytań / Windows 8.1 / Windows 10 / VB2008 / VB 2010 / VB 2012 / Pisz poprawnie
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Wyślij email
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Czw Paź 05, 2017 12:15 pm      Temat postu: Odpowiedz z cytatem Pisownia

Dzięki. Poczytam. Na razie zrobiliśmy eksperymenty ze skalowaniem canvasu i wypadły bardzo obiecująco, wręcz bardzo dobrze. Oczywiście to dopiero wstęp, Twoje linki na pewno się przydadzą.
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Nie Paź 08, 2017 10:13 am      Temat postu: Odpowiedz z cytatem Pisownia

Chciałbym zmienić nieco wygląd kontrolki DoubleUpDown z Extended WPF Toolkit. Załączam obecny i pożądany wygląd kontrolek. Być może da się to zmienić za pomocą stylu ale widzę, że wraz z WPF Toolkit instalują się trzy dll-ki z themes np. Xceed.Wpf.AvalonDock.Themes.Metro.dll
Może zamiast kombinowania ze stylami można zmienić "theme" na metro i prościej rozwiązać problem ? Może ktoś z Was to robił i podzieli się informacjami...
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Sro Paź 11, 2017 10:23 am      Temat postu: Odpowiedz z cytatem Pisownia

Potrzebuję obrócić tekst w kontrolce TextBox, opcja=0 - horizintal - czyli standardowo, opcja=1 - vertical - tekst z lewej strony od dołu, opcja=2 - verical - tekst w prawej strony od góry
Na załączonej grafice lepiej widać o co mi chodzi. Chciałbym, żeby rozmiary i położenie kontrolki pozostawały bez zmian z rotacja dotyczyła tylko tekstu. Robię to za pomocą .RotateTransform (0, 90, 270) ale to obraca całą kontrolką.
Próbowałem zmieniać w locie parametry (x,y,width i height) ale rozjeżdża mi się to...
Jak byście to zrobili, żeby parametry ustawienie i wielkość kontrolki pozostawić bez zmian a obracać tekst ?



vertical.jpg
 Opis:

Pobierz
 Nazwa pliku:  vertical.jpg
 Wielkość pliku:  14.9 KB
 Pobierano:  8 raz(y)

Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
samolot



Dołączył: 26 Sty 2006
Posty: 8190
Skąd: Toruń

PostWysłany: Czw Paź 12, 2017 9:38 pm      Temat postu: Odpowiedz z cytatem Pisownia

Cytat:
Jak byście to zrobili, żeby parametry ustawienie i wielkość kontrolki pozostawić bez zmian a obracać tekst ?

Szczerze mówiąc, mam wątpliwości dlaczego ty rysujesz pola tekstowe i w nich ustawiasz kierunek tekstu. Ja rysowałem tekst bezpośrednio na PrintDocument, jeśli chodzi o podgląd, czyli w wypadku druku na kartce papieru w jej obszarze ograniczonym marginesami. Jeśli miałem obracać tekst to używałem RotateTransform, ale kontenerem było pole PrintDocument, a nie "dodatkowy kontener" - pole tekstowe.
Jak widzę na załączniku, masz tam prostokątne obramowanie tekstu. Rozumiem, że jest to narysowane obramowanie pola tekstowego. Ja narysowałbym po prostu prostokąt, a w nim tekst.

Zrobiłem kiedyś swoją funkcję (w VB.NET), do badania obrotu tekstu bo chciałem ułatwić sobie zbadanie, co w obrocie tekstu ma wpływ na takie , a nie inne obracanie tekstu i miejsce jego rysowania:
Kod:
    Private Function ObracajTekst(ByVal Napis As String, Stopnie As Single, Odl_X As Single, Odl_Y As Single, kolor As Color) As Boolean

        ObracajTekst = False
        Try
            Dim Gr As System.Drawing.Graphics = Me.CreateGraphics
            Dim MM As Single = 100 / 25.4 ' 1 milimetr wyrazony w setnych częściach calach

            Dim CurrX2 As Integer = CInt(-Odl_Y * MM) : txtCurrX2.Text = CurrX2.ToString
            Dim CurrY2 As Integer = CInt(Odl_X * MM) : txtCurrY2.Text = CurrY2.ToString


            Dim Cz1 As Font = Ustal_Czcionke(10, FontStyle.Bold, "Microsoft Sans Serif")

            ' Me.BackColor = System.Drawing.SystemColors.Control
            Gr.Clear(System.Drawing.SystemColors.Control)

            Gr.RotateTransform(Stopnie, MatrixOrder.Prepend)
            Gr.DrawString(Napis, Cz1, Brushes.Black, CurrX2, CurrY2)


        Catch ex As Exception

        End Try

    End Function


Ta funkcja rysuje tekst bezpośrednio na formie.

_________________
Nie zadawaj bezcelowych pytań / Windows 8.1 / Windows 10 / VB2008 / VB 2010 / VB 2012 / Pisz poprawnie
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Wyślij email
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Pią Paź 13, 2017 8:06 am      Temat postu: Odpowiedz z cytatem Pisownia

Zmiany parametrów docelowo będą dotyczyć wszystkich kontrolek. Użytkownik będzie mógł zmieniać elementy etykietki dowolnie (położenie, rozmiary, obramowanie, font, wielkość fontu, image), dotyczy to również położenia tekstu w kontrolce, do tego celu mam trzy buttony (Horizontal, VerticalLeft i VerticalRight), naciskając przycisk widzę "na żywo" jak wygląda "obrócony" tekst na etykietce.

Wczoraj wieczorem zrobiłem to ale z kodu nie jestem zadowolony i muszę to poprawić, być może Twój kod mi coś podpowie/pomoże/usprawni. W C# jeszcze dużo rzeczy nie łapię ale małymi (wręcz bardzo małymi) kroczkami prace posuwają się - zwłaszcza jak robię sam i nikt mi nie pomaga ;-)
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Sousuke



Dołączył: 19 Lis 2005
Posty: 598
Skąd: Wrocław

PostWysłany: Pią Paź 13, 2017 8:51 am      Temat postu: Odpowiedz z cytatem Pisownia

Co do obracania samego tekstu w WPFie, to znalazłem takie coś https://stackoverflow.com/questions/43360286/rotating-text-in-wpf-textbox-without-rotating-control-itself
_________________
Blog na temat programowania w .NET
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Odwiedź stronę autora Numer GG
Grzegorz123



Dołączył: 27 Cze 2017
Posty: 126

PostWysłany: Czw Paź 19, 2017 3:00 pm      Temat postu: Odpowiedz z cytatem Pisownia

Rozwiązanie zostało znalezione ale nie mogę tu wstawić kodu, bo ma dość znaczne powiązane z resztą aplikacji i byłoby mało klarowne.
Generalnie prace zmierzają do zakończenia części interfejsowej, próby wydruku wypadły bardzo udanie jednak jeszcze trochę pracy z tym będzie. Z interfejsu jestem bardzo zadowolony, spełnia oczekiwania i zapewnia odpowiednią funkcjonalność.

Teraz skupię się na zapewnieniu "ładności" przycisków i ikonek.
W związku z tym pytanie: czy ktoś wie gdzie mogę znaleźć kompletny wykaz setterów stylu do kontrolki button ?
W sieci jest wiele przykładów ale ustawienie części setterów nie do końca ustawia to co chcę. Np. ustawiam tylko tło przycisku na "transparent" a przestaje działać MouseOver. Być może ja coś źle robię...
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość
Sousuke



Dołączył: 19 Lis 2005
Posty: 598
Skąd: Wrocław

PostWysłany: Pią Paź 20, 2017 11:51 am      Temat postu: Odpowiedz z cytatem Pisownia

Nie znam się, ale być może gdy dajesz tło na transparent to mouse over działa tylko na nieprzezroczystej części przycisku?

Co do listy opcji niestety więcej niż to nie mogę znaleźć https://docs.microsoft.com/en-us/dotnet/framework/wpf/controls/button-styles-and-templates.

_________________
Blog na temat programowania w .NET
Powrót do góry
Zobacz profil autora Wyślij prywatną wiadomość Odwiedź stronę autora Numer GG
Wyświetl posty z ostatnich:   
Odpowiedz do tematu    Forum Coders' city Strona Główna -> Visual Studio: C#, VB, VC++, … Wszystkie czasy w strefie CET (Europa)
Idź do strony Poprzedni  1, 2, 3 ... 18, 19, 20, 21, 22, 23  Następny
Strona 19 z 23

 
Skocz do:  
Możesz pisać nowe tematy
Możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Możesz dodawać załączniki na tym forum
Możesz pobierać pliki z tego forum




Debug: strone wygenerowano w 0.19704 sekund, zapytan = 13
contact

| Darmowe programy i porady Jelcyna | Tansze zakupy w Helionie | MS Office Blog |