Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    2

    [VB.NET] Come impostare il colore di un controllo

    Buongiorno a tutti,
    vi spiego qual è il mio problema. Ho creato un programma che utilizza una lunga serie di impostazioni per eseguire un export grafico. Proprio perchè le impostazioni sono tante l'utente ha la possibilità di salvarle in un file di testo, che poi può caricare al momento opportuno.
    Tutto funziona bene tranne un punto.
    Da un ColorPicker l'utente può scegliere un colore, che salva nel file di testo come nome o sequenza RGB. La questione è: una volta che carico il file delle impostazioni salvate come faccio a far leggere questi valori e applicarli, per esempio, al backcolor di un bottone?

    codice:
    dim bmpBackColor As IColor
    bmpBackColor = TryCast(colorPalette.Color, IColor)
    
    'qui l'utente imposta il colore
    btnColorPickerBMP.BackColor = ColorTranslator.FromWin32(bmpBackColor.RGB)
    
    'codice per la scrittura su file
    '..............
    'così appare il colore sul file di testo:
    'Background color: Color [A=255, R=230, G=0, B=0]
    
    'qui l'utente carica il file delle impostazioni (le diverse variabili sono registrate in un array)
    'qui bisogna leggere il file di testo e ripristinare il colore sul controllo
    'btnColorPickerBMP.BackColor = ColorTranslator.ToWin32(exportSettingsArray(4))
    '?????????????????
    Spero di essermi spiegato! Qualcuno può aiutarmi?
    Grazie in anticipo

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,468
    Semplicemente dopo aver letto i 4 valori in 4 variabili

    btnColorPickerBMP.BackColor = Color.FromArgb(a, r, g, b)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2013
    Messaggi
    2
    Grazie Oregon per la rapida risposta.
    Forse però mi sono espresso male. L'array dal quale ottengo il colore mi serve solo perchè nel file ho una serie di parametri e quindi ad ogni riga corrisponde un'impostazione: il colore è alla 5° riga.
    Il problema però non è l'array. E' che non so come, da una stringa (che può essere "Red" oppure "Color [A=255, R=230, G=0, B=0]"), memorizzata in base al click sul selettore del colore, ottenere il colore in questione per riapplicarlo al controllo, per esempio al backcolor di un bottone.

    Se io ho exportSettingsArray(4) = Color [A=255, R=230, G=0, B=0] e lo applico all''istruzione frmExportUtility.btnColorPickerBMP.BackColor = ColorTranslator.ToWin32(exportSettingsArray(4)) , mi viene generato l'errore "Impossibile convertire il valore di tipo 'String' in 'System.Drawing.Color'".

    Spero che ora sia più chiaro.
    Grazie
    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.