Cum "controlez" un control dintr-un common dialog?
Problema
Am un dialog comun, sa zicem "File Open" si vreau (doar un exemplu), sa schimb textul unui control tip static.
Pare simplu, nu trebuie decat sa derivez din CFileDialog, sa suprascriu functia OnInitDialog iar acolo apelez GetDlgItem si SetWindowText sau direct SetDlgItemText (ID-ul controlului l-am gasit cu Spy++).
Nu merge. GetDlgItem intoarce NULL iar SetDlgItemText nu transforma perfect nimic.
Rezolvare
De fapt, clasele derivate din CComonDialog (CFileDialog, CFontDialog, CColorDialog, etc) incapsuleaza un child al dialogului comun ce contine controalele. Deci trebuie sa-i gasim mai intai parent-ul.
Exemplu
Citat:
class CMyFileDialog : public CFileDialog
{
// ...
// Overrides
public:
virtual BOOL OnInitDialog();
// ...
};
Nu puteti crea un subiect nou in acest forum Nu puteti raspunde in subiectele acestui forum Nu puteti modifica mesajele proprii din acest forum Nu puteti sterge mesajele proprii din acest forum Nu puteti vota in chestionarele din acest forum
Ora este GMT + 3 ore
Pagina 1 din 1
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro