Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Δεν μπορώ να αλλάξω backcolor στα label όταν τυπώνω[VB 2005]

Îåêßíçóå áðü ôï ìÝëïò mousi. Τελευταία δημοσίευση από το μέλος mousi στις 15-04-2006, 06:40. Υπάρχουν 2 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  14-03-2006, 08:43 10618

    Δεν μπορώ να αλλάξω backcolor στα label όταν τυπώνω[VB 2005]

    Συνημμένα: 1.jpg
    Καλημέρα. Έχω ένα πρόβλημα.
    Δεν μπορώ να καταλάβω τι συμβαίνει... Θέλω να τυπώσω μια φόρμα και στο printbutton έχω βάλει το εξής:

    Private Sub PrintButton_Click(ByVal sender As System.Object, ByVal e As _

           System.EventArgs) Handles printbutton.Click

            Dim deflabcolor As Color = Label1.BackColor

            Dim defcolor As Color = Me.BackColor

            Dim defheight As Integer = Me.Height

            Dim ctrl As Control

            For Each ctrl In Me.Controls

                If TypeOf (ctrl) Is Label Then

                    ctrl.BackColor = Color.White

                End If

            Next

            Me.BackColor = Color.White

            Me.Height = 197

            CaptureScreen()

            Me.WindowState = FormWindowState.Minimized

            Dim result As DialogResult = PrintDialog1.ShowDialog()

            If (result = DialogResult.OK) Then

                PrintDocument1.Print()

            End If

            Me.BackColor = defcolor

            Me.Height = defheight

            For Each ctrl In Me.Controls

                If TypeOf (ctrl) Is Label Then

                    ctrl.BackColor = deflabcolor

                End If

            Next

            Me.WindowState = FormWindowState.Normal

        End Sub



    Όταν τυπώνει τα κάνει όλα όπως θέλω (αλλάζει το χρώμα και το μέγεθος της φόρμας), εκτός από τα Label... Αυτά μου τα τυπώνει στο κλασσικό χρώμα, ενώ στην οθόνη τα βλέπω άσπρα (όσο είναι ανοιχτό το PrintDialog). Μπορεί να με βοηθήσει κάποιος; Μου έχει σπάσει τα νεύρα Angry [:@]

    Δοκίμασα επίσης να βάλω ένα Label1.Backcolor=color.white πριν από το screencapture φυσικά, αλλά πάλι δεν δουλεύει!
    Επισυνάπτω και εικόνα


    Fititis.net, το απόλυτο φοιτητικό Portal!
  •  03-04-2006, 17:10 11514 σε απάντηση της 10618

    Απ: Δεν μπορώ να αλλάξω backcolor στα label όταν τυπώνω[VB 2005]

    Γιατί δε βάζεις το backcolor των labels σου σε Transparent; Έτσι Θα αποφύγεις και τον κώδικα από την Sub σου που τα αλλάζει


    Panos
  •  15-04-2006, 06:40 11915 σε απάντηση της 10618

    Απ: Δεν μπορώ να αλλάξω backcolor στα label όταν τυπώνω[VB 2005]

    Δεν το είχα σκεφτεί αυτό... Πολύ καλή ιδέα, thanx

    ΥΓ: Πάλι το ίδιο κάνει... Ενώ τα έχω κάνει transparent, αυτό πάλι κρατάει το χρώμα που είχε πριν την εκτύπωση η φόρμα...

    Fititis.net, το απόλυτο φοιτητικό Portal!
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems