Boutton imprimer + boutton enregistrer +visaulC++.NET

Résolu
drcmomo Messages postés 182 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 25 décembre 2009 - 29 mai 2006 à 15:36
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 - 31 mai 2006 à 09:50
URGENT(ps je sais tres bien que vous n'etes pas a ma disposition)
Bonjour tout le monde

j'ai un gros petit probleme j'ai deux fonction :

la premiere permet kan on click sur le boutton sauvegarder parmet d'enregistrer le contenu d'une listBox

quand je click dessus il m'enregistre un fichier vide.

la deuxieme kan je click sur le boutton imprimé
j'ai une petite fenetre qui apparait avec un petit message le document

 ne contient pas de page.
je suis debut aidez moi si vous pouvez













private



: System::Void button9_Click(System::Object * sender, System::EventArgs * e){

Stream* myStream ;

SaveFileDialog * saveFile1 =


new
SaveFileDialog;saveFile1->Filter= S"txt files (*.txt)|*.txt|All files (*.*)|*.*";

saveFile1->FilterIndex=2;

saveFile1->RestoreDirectory=


true
;


if
(saveFile1->ShowDialog() ==DialogResult::OK){


if
((myStream = saveFile1->OpenFile())!=0){

myStream->Close();

}

}

private


: System::Void button6_Click(System::Object * sender, System::EventArgs * e){

PrintPreviewDialog * printPreviewDialog1 =


new
PrintPreviewDialog();


printPreviewDialog1->ShowDialog();











}

10 réponses

cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
30 mai 2006 à 11:26
Si c'est bien un listbox que tu veut enregistrer voila j'ai testé sa marche



private
: System::Void button2_Click(System::Object * sender, System::EventArgs * e){

StreamWriter* sr = File::CreateText("Data1.txt");



int



nombreitem;nombreitem = listBox1->Items->Count; // nombre items dans la listbox



for



(

int
x = 0; x < nombreitem; x++){

listBox1->SetSelected(x,


true
);sr->WriteLine(listBox1->SelectedItem);

}

sr->Close();

}

Signer Ralebole
3
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
30 mai 2006 à 13:30
Et voila pour la sauvegarde avec savefiledialog 

private

: System::Void button4_Click(System::Object * sender, System::EventArgs * e){

saveFileDialog1->Filter= S"txt files (*.txt)|*.txt|All files (*.*)|*.*";

saveFileDialog1->FilterIndex=2;

 

if(saveFileDialog1->ShowDialog() == DialogResult::OK){

StreamWriter* sr = File::CreateText(saveFileDialog1->FileName);

int

nombreitem;nombreitem = listBox1->Items->Count;

for

(
int x = 0; x < nombreitem; x++){

listBox1->SetSelected(x,

true);sr->WriteLine(listBox1->SelectedItem);

}

sr->Close();

}

}

Si tu a besoin d'aide pour autre chose n'esite pas à me le demandé par message privé

Signer Ralebole.
3
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
29 mai 2006 à 18:50
Si ca peut aider ?

private: System::Void button2_Click(System::Object *  sender, System::EventArgs *  e)
    {
    if(saveFileDialog1->ShowDialog() == DialogResult::OK)
      {
         richTextBox1->SaveFile(saveFileDialog1->FileName,
            RichTextBoxStreamType::RichText);
      }
    }

Je recherche dans mes archive pour pouvoir imprimer mais c'est un bazard
et que veut tu imprimé ?
Je continu ma recherche.

Signer ralebole.  
0
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
29 mai 2006 à 19:07
Tu peut essayer cette methode pour sauvegarder

  StreamWriter* sr = File::CreateText("Data1.txt");

 for (int x = 0; x <= nombreitem 12; x++)
   {
 
a la place du textbox1 tu recupere chaque ligne de ta listbox                                 
      sr->WriteLine(textBox1->Text); 

}

sr->Close();
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
drcmomo Messages postés 182 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 25 décembre 2009
30 mai 2006 à 09:13
Bonjour !!
merci pour ton aide, je vais tester pour voir si ça marche
je te tiens au courant. merci encore.
0
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
30 mai 2006 à 12:53
Et voila pour l'impression de la listbox



private



: System::Void button5_Click(System::Object * sender, System::EventArgs * e){

printPreviewDialog1->Document = printDocument1;

printPreviewDialog1->ShowDialog();

}



private



: System::Void printDocument1_PrintPage(System::Object * sender, System::Drawing::Printing::PrintPageEventArgs * e){

System::Drawing::Font* drawFont =


new
System::Drawing::Font("Arial", 10);SolidBrush* maBrush =


new
SolidBrush(Color::Black);


int



u= 20;


int



nombreitem;nombreitem = listBox1->Items->Count;



for



(

int
x = 0; x < nombreitem; x++){

listBox1->SetSelected(x,


true
);e->Graphics->DrawString(listBox1->Text,drawFont,maBrush, 10, u);

u= u+20;

}

}

Signer Ralebole
0
drcmomo Messages postés 182 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 25 décembre 2009
30 mai 2006 à 13:48
re  bonjour MERCIIIIIIIIIIIIIIIIIIIIIIIIII
tu es trop sympa
j'ai trop mal en VBC++NET
en fait dis moi je dois integrer mes codes dans une interface graphique
comment faire pour diriger un pointeur vers l'interface.
car j'ai un prob avec non MANAGE et C++ normal.
si tu as une idée je te serais vraiment reconnaissant.
   merci d'avance
0
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
30 mai 2006 à 17:56
J'ai pas trop compris ta question si tu peut détaillé.

Signer Ralebole
0
drcmomo Messages postés 182 Date d'inscription lundi 13 mars 2006 Statut Membre Dernière intervention 25 décembre 2009
31 mai 2006 à 09:25
Bonjour !!

pour le boutton d'impression , quand je lance impression il m'imprime une page vide

voici le code je l'ai modifié un peu:


private: System::Void printDocument1_BeginPrint(System::Object * sender, System::Drawing::Printing::PrintPageEventArgs * e)


{





MessageBox::Show("MIS");


}



private



: System::Void printDocument1_EndPrint(System::Object * sender, System::Drawing::Printing::PrintPageEventArgs * e) {

MessageBox::Show("MIS");

}

 



private



: System::Void button6_Click(System::Object * sender, System::EventArgs * e){

printDialog1 =


new
PrintDialog();printDocument1 =


new
System::Drawing::Printing::PrintDocument();


// l'impression des données de la liste box




printDialog1->Document = printDocument1;







if
(printDialog1->ShowDialog()==DialogResult::OK){

printDocument1->Print();

}

}



// des exemples


// http://www.dotnetcoders.com/web/learning/cert/exams/winapps/printing.aspx




private



: System::Void printDocument1_QueryPageSettings(System::Object * sender, System::Drawing::Printing::PrintPageEventArgs * e) {


//Rien

}





private



: System::Void printDocument1_PrintPage(System::Object * sender, System::Drawing::Printing::PrintPageEventArgs * e){

System::Drawing::Font* drawFont =


new
System::Drawing::Font("Arial", 10);SolidBrush* maBrush =


new
SolidBrush(Color::Black);


int
u= 20;


int
nombreitem;nombreitem = listBox1->Items->Count;


for
(

int
x = 0; x < nombreitem; x++){

listBox1->SetSelected(x,


true
);e->Graphics->DrawString(listBox1->Text,drawFont,maBrush, 10, (


float
)u); u= u+20;


// theoriquement, remplit la page element par element

}


}






 
0
cs_ralebole Messages postés 208 Date d'inscription mardi 29 novembre 2005 Statut Membre Dernière intervention 5 janvier 2023 1
31 mai 2006 à 09:50
Je ne comprend pas l'impression marche chez moi.
Pour tes codes va voir tes messages privé.


Signer Ralebole.
0
Rejoignez-nous