Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Farbskala in VB

Empfohlene Antworten

Veröffentlicht

Ich möchte eine Farbskala in VB zeichnen lassen, in der hinterher die gewünschte Farbe vom User ausgesucht werden kann. Problem ist nur, dass wenn ich mit 3 Schleifen einfach alle RGB(X,Y,Z) Werte die möglich sind durchlaufen lasse, dann sieht das ganze zeimlich durcheinander aus.

Ich will aber sonen schönen Farbverlauf haben wie das bei den ganzen Bildbearbeitungsprogrammen ist.

Am besten wär ein Code-Beispiel.

Danke

Also Du als mein Arbeitskollege solltest eigentlich wissen, dass die www.tutorials.de Site bei uns auf Arbeit gesperrt ist. Wäre ganz nett wenn mal jemand ne ernsthafte Hilfe posted. Oder von mir aus auch von www.tutorials.de den passenden Code hier reinposted.

Danke

Das Objekt CommonDialog hat die Methode .ShowColor. Schau mal ob Dir das vielleicht weiterhilft.

Ich glaube, der Code auf VB-Fun dürfte Dir weiterhelfen.

Falls Du da nicht hinkommen solltes, hier noch mal der Code:

(Du mußt die passenden Steuerelemente in Deinem Formular einbinden..)

Option Explicit

Private Sub cStart_Click()

Dim rl As Long, gl As Long, bl As Long

Dim rr As Long, gr As Long, br As Long

Dim rz As Long, gz As Long, bz As Long

Dim rk As Long, gk As Long, bk As Long

Dim m As Long, i As Long, j As Long

Dim r As Long, g As Long, b As Long

cStart.Enabled = False

m = 255

rl = Abs(Val(tRed(0).Text)) Mod 256

gl = Abs(Val(tGreen(0).Text)) Mod 256

bl = Abs(Val(tBlue(0).Text)) Mod 256

rr = Abs(Val(tRed(1).Text)) Mod 256

gr = Abs(Val(tGreen(1).Text)) Mod 256

br = Abs(Val(tBlue(1).Text)) Mod 256

rz = Abs(Val(tRed(2).Text)) Mod 256

gz = Abs(Val(tGreen(2).Text)) Mod 256

bz = Abs(Val(tBlue(2).Text)) Mod 256

rk = Abs(Val(tRed(3).Text)) Mod 256

gk = Abs(Val(tGreen(3).Text)) Mod 256

bk = Abs(Val(tBlue(3).Text)) Mod 256

For i = 0 To m

For j = 0 To m

r = ((rl * (m - i) / m) + (rr * i / m)) * (m - j) / _

m + ((rz * (m - i) / m) + (rk * i / m)) * j / m

g = ((gl * (m - i) / m) + (gr * i / m)) * (m - j) / _

m + ((gz * (m - i) / m) + (gk * i / m)) * j / m

b = ((bl * (m - i) / m) + (br * i / m)) * (m - j) / _

m + ((bz * (m - i) / m) + (bk * i / m)) * j / m

pic.PSet (i, j), RGB(r, g, B)

Next

cStart.Caption = Str(i + 1) & "/255 ": cStart.Refresh

Next

cStart.Caption = "&Starten"

cStart.Enabled = True

End Sub

Also die Idee mit dem .ShowColor vom CommonDialog da hätte ich auch selbst drauf kommen können. Ist ja schließlich der gleiche Dialog der auch in Paint angezeigt wird. Den ich pracktisch in einfach versucht habe nachzubilden. Somit kann ich mir die Arbeit natürlich sparen und nehm das CommonDialog ShowColor.

Danke aber auch an Fallin.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.