Qualcuno sa qual'è il metodo che viene chiamato per colorare la progress bar? E pure cosa fa mi piacerebbe sapere.. In più ho sentito che la Microsoft aveva reso disponibile il codice non modificabile del framework.net.. qualcune ne sa di più?
Qualcuno sa qual'è il metodo che viene chiamato per colorare la progress bar? E pure cosa fa mi piacerebbe sapere.. In più ho sentito che la Microsoft aveva reso disponibile il codice non modificabile del framework.net.. qualcune ne sa di più?
MSDN è tuo amico:
http://msdn2.microsoft.com/it-it/lib...essbar_members(VS.80).aspx (qua ci sono tutti i metodi della ProgressBar)
Il metodo che a te interessa è la OnPaint
Ehhh no... quello la colora fisicamente... io cerco la colorazione interna.. quella che sale e scende
Io avevo sentito che si trattava di un'implementazione alternativa realizzata da studenti di una qualche università americana sotto il patrocinio di Microsoft... comunque, anche se non si tratta proprio di leggere i sorgenti, dai un'occhiata con ildasm agli assembly standard del .NET Framework (situati in %windir%\Microsoft.NET\Framework\v<versione>).Originariamente inviato da Stoicenko
In più ho sentito che la Microsoft aveva reso disponibile il codice non modificabile del framework.net.. qualcune ne sa di più?
Amaro C++, il gusto pieno dell'undefined behavior.
Devi riscriverti la OnPaint eseguendo l'override della funzione.![]()
allora, la onPaint disegna il controllo.. io devo modificare la colorazione interna cioè quando modifico la prioprietà value..
ho usato un programma per deoffuscare il codice del framework (del tutto legale) e ho scoperto che la colorazione avviene tramite chiamata di sistema, della serie che è win stesso che si occupa di colorare e non il codice.. indi per cui se voglio colorare blocco quella chiamata e mi creo una mia colorazione tramite le librerie grafiche del framework..
E farti una classe che eredita da Control e gestissce le stesse cose, non fai prima??
:berto:
La OnPaint disegna anche la colorazione interna.
Devi riscriverti l'intera OnPaint, un metodo secondario per quello che vuoi fare tu credo nn esista a meno che nn lo crei e lo invochi nella OnPaint, ma la OnPaint è il cuore di tutto.
Se poi non sei convinto ancora, guarda qua: http://www.codeproject.com/KB/cpp/colorprogressbar.aspx
La OnPaint NON disegna la colorazione interna ma chiama il metodo che serve per colorare il quale utilizza una chiamata di sistema..
erediterò da control..
Dalla tua risposta ne deduco che non hai letto il link che ti ho postato che era un articolo su una ProgressBar colorata tramite il metodo OnPaint, poi se noti su MSDN non fà nessun riferimento a un metodo che fà quello che dici (che devo pensare che nn l'hanno riportato :master: ) per cui per come la vedo io la OnPaint è l'unica soluzione, poi se mi puoi contaddire felice per te![]()
Per quanto riguarda il metodo di sistema credo faccia delle chiamate alle GDI tramite la classe Graphics e Drawing, in fondo il Framework scomoda alcune API per la creazione di applicazioni Windows.