vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Re: Farbauswahl mit dem CommonDialog für alles Forms über nehemen 
Autor: GeCKo1234
Datum: 19.02.05 01:20

erst mal danke für deine hilfe.
es funktioniert jetzt das die farbe für alle Froms übernommen wird, aber mit dem speichen bzw. laden stimmt noch was nicht.
Beim neustart des Programmes ist die bg farbe immer Schwarz, egal was ich einstelle.

mein modul sieht so aus:
Public nBackColor As Long
 
Public Sub SetBackColor()
  Dim oForm As Form
  For Each oForm In VB.Forms
    oForm.BackColor = nBackColor
 Next
End Sub
der rest so:
Private Sub Command4_Click()
 
  On Error Resume Next
  With CommonDialog1
    .CancelError = True
    .ShowColor
    If Err = 0 Then
      nBackColor = .Color
      SetBackColor
      SaveSetting "Projekt1", "Colos", "BackColor", CStr(nBackColor)
      End If
  End With
 
End Sub
 
Private Sub Command5_Click()
Form2.Show
End Sub
 
Private Sub Form_Load()
nBackColor = Val(GetSetting("Projekt1", "Colors", "BackColor", CStr( _
  vbButtonFave)))
SetBackColor
End Sub
hab ich was falsch gemacht?

mfg
GeCKoDieter schrieb:
Zitat:

Stimmt

Du musst Dir den Farbwert einfach nur "merken" - am
besten in einer globalen Variable in einem Modul:
' im Modul
Public nBackColor As Long
Dann änderst Du den Code wie folgt ab:
Private Sub Command4_Click() 
  On Error Resume Next 
  With CommonDialog1 
    .CancelError = True 
    .ShowColor 
    If Err = 0 Then 
      nBackColor = .Color
      SetBackColor
    End If 
  End With 
End Sub
Die "SetBackColor"-Prozedur setzt Du ebenfalls in
ein Modul mit folgendem Code:
Public Sub SetBackColor()
  Dim oForm As Form
  For Each oForm In VB.Forms
    oForm.BackColor = nBackColor
 Next 
End Sub
Jetzt brauchst Du nur noch im Form_Load Ereignis der
einzelnen Formen die BackColor-Eigenschaft wie folgt
zuzuweisen:
Private Sub Form_Load()
  Me.BackColor = nBackColor
End Sub
Ach ja... Du wolltest das Ganze auch noch speichern
Also noch schnell folgenden Code einfügen (dort, wo die
Farbauswahl stattfindet):
...
      nBackColor = .Color
      SetBackColor
      SaveSetting "MyApp", "Colos",
"BackColor", CStr(nBackColor)
...
Upps... natürlich sollte beim nächsten Start der Anwendung
die zuletzt eingestellte Hintergrundfarbe wieder vorgegebenw
werden
In der StartForm Deines Projekts (oder in der Sub Main, falls
so festgelegt) folgenden Code einfügen:
nBackColor = Val(GetSetting("MyApp",
"Colors", "BackColor", CStr(vbButtonFave))
SetBackColor
Sodala... das war's dann auch schon
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Farbauswahl mit dem CommonDialog für alles Forms über neheme...637GeCKo123418.02.05 23:04
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...388ModeratorDieter19.02.05 00:10
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...369GeCKo123419.02.05 00:45
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...386ModeratorDieter19.02.05 00:51
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...386GeCKo123419.02.05 01:20
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...373ModeratorDieter19.02.05 08:29
Re: Farbauswahl mit dem CommonDialog für alles Forms über ne...394GeCKo123419.02.05 10:46

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel