Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Pulsanti personalizzati
Forum - C# / VB.NET - [VB.NET] Pulsanti personalizzati

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 17:58
Domenica, 31/05/2009
Salve a tutti,
nella mia applicazione in windows form ho bisogno di creare dei pulsanti personalizzati che cambino l'immagine all'evento mouseup, enter, leave, e down, come i comuni pulsanti.
Con photoshop ho creato le immagini che servono, pero nn saprei come abbinarle al tasto.
Se la metto di sfondo ad un controllo button, c'è sempre quel bordo che rimane, anche in aspetto flat o popup.
Ho provato a metterla come immagine di un label, ma nn esiste strecth, quindi dovrei creare un'immagine su misura per ogni label.

Inoltre se nn dovessi utilizzare un controllo button che contiene un testo, dovrei mettere il testo nell'immagine e creare sempre un'immagine per ogni pulsante, il che appesantirebbe all'infinito l'eseguibile.

Ho pensato di poter prendere l'immagine da una cartella da posizionare nella directory dell'exe, ma volendo che le immagini non siano accessibili?

Qualcuno ha qualche consiglio?
Grazie mille a tutti, buona domenica! ;)


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 18:24
Domenica, 31/05/2009
Testo quotato

Postato originariamente da dedalux:

Salve a tutti,
nella mia applicazione in windows form ho bisogno di creare dei pulsanti personalizzati che cambino l'immagine all'evento mouseup, enter, leave, e down, come i comuni pulsanti.
Con photoshop ho creato le immagini che servono, pero nn saprei come abbinarle al tasto.
Se la metto di sfondo ad un controllo button, c'è sempre quel bordo che rimane, anche in aspetto flat o popup.
Ho provato a metterla come immagine di un label, ma nn esiste strecth, quindi dovrei creare un'immagine su misura per ogni label.


Ciao.
Quale bordo rimane??
Hai provato ad impostare a 0 la proprietà BorderSize sotto FlatApparence nella scheda Aspetto della finestra delle proprietà del controllo Button??

Testo quotato


Ho pensato di poter prendere l'immagine da una cartella da posizionare nella directory dell'exe, ma volendo che le immagini non siano accessibili?



Se vuoi renderle inaccessibili, puoi incorporarle come risorse del progetto.

Facci sapere...
Ciao

PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 18:53
Domenica, 31/05/2009
Oddio non mi ero accorto che c'era la "+" su flatstyle! Perfetto, grazie mille!
Adesso faccio alcune prove e vi so dire grazie!! :love:


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 19:51
Domenica, 31/05/2009
Allora, io sono riuscito a far sparire il bordo, pero rimane un problema:
l'immagine del button è png e i bordi arrotondati, quindi ha delle zone alpha.
L'immagine impostata di background iniziale è apposto, come quella del pulsante disabilitato che vine impostata via codice da una checkbox, mentre quando passo sopra o clicco col mouse, si vedono gli angolini bianchi, mentre dovrebbero essere invisibili e mostrare la parte dietro del form...

in pratica sono solo le immagini di MouseDown e MouseEnter che mostrano gli angolini, al MouseLeae spariscono.... :O

edit: succede anche cambiando l'abbinamento evento-immagine, quindi non un problem della .png

re-edit: RISOLTO, bastava impostare le propietà MouseOver/DownBackColor a Transparent!

Grazie a tutti, spero possa servire a molti, buon ponte!:k:

Ultima modifica effettuata da dedalux il 31/05/2009 alle 20:16


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 21:04
Domenica, 31/05/2009
Gente (lol) nuovo problemuccio, se il pulsante richiama una messagebox, lo stato attivo passa ad essa e il pulsante nel form dietro viene evidenziato dal solito bordo bianco.. :-|
Se ignoro la messagebox e restituisco lo stato attivo al form il bordo sparisce, mentre se seleziono un altro componente tipo un'altro pulsante e ritorno nella msgbox, torna visibile il bordo ma sull'ultimo controllo selezionato, ossia quello che è focused nel form che ha generato la finestra di messaggio... :d:d:d
Se volete posto uno screenshot

Ultima modifica effettuata da dedalux il 31/05/2009 alle 21:06


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 21:11
Domenica, 31/05/2009
Testo quotato

Postato originariamente da dedalux:

Gente (lol) nuovo problemuccio, se il pulsante richiama una messagebox, lo stato attivo passa ad essa e il pulsante nel form dietro viene evidenziato dal solito bordo bianco.. :-|
Se ignoro la messagebox e restituisco lo stato attivo al form il bordo sparisce, mentre se seleziono un altro componente tipo un'altro pulsante e ritorno nella msgbox, torna visibile il bordo ma sull'ultimo controllo selezionato, ossia quello che è focused nel form che ha generato la finestra di messaggio... :d:d:d
Se volete posto uno screenshot



Prova a gestire l'evento MouseUp anzichè l'evento Click del Button.

Facci sapere...
Ciao

PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 21:18
Domenica, 31/05/2009
In che senso scusa?
Io clicco sul pulsante, e fa una cosa in determinate condizioni, se queste condizioni necessarie mancano mi torna un messagio.
Intendi di fargli fare questa cosa al mouseup invece che al click?


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Avatar
Jeremy (Normal User)
Pro


Messaggi: 134
Iscritto: 08/02/2009

Segnala al moderatore
Postato alle 21:33
Domenica, 31/05/2009
Testo quotato

Postato originariamente da dedalux:

In che senso scusa?
Io clicco sul pulsante, e fa una cosa in determinate condizioni, se queste condizioni necessarie mancano mi torna un messagio.
Intendi di fargli fare questa cosa al mouseup invece che al click?



Esatto .... invece di gestire l'evento Click, gestisci l'evento MouseUp .... così il button si è già *sistemato*....non è ancora premuto.

Facci sapere...
Ciao

PM Quote
Avatar
dedalux (Normal User)
Pro


Messaggi: 155
Iscritto: 14/02/2009

Segnala al moderatore
Postato alle 21:49
Domenica, 31/05/2009
Ho provato sia nell'applicazione sia in un progetto nuovo ma il contorno rimane..
http://img189.imageshack.us/img189/8683/provapulsante.jpg


«La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta.»

Isaac Asimov
PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo