Boutton imprimer + boutton enregistrer +visaulC++.NET [Résolu]

Signaler
Messages postés
182
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
25 décembre 2009
-
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
-
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

Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
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
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
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.
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
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.  
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
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();
Messages postés
182
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
25 décembre 2009

Bonjour !!
merci pour ton aide, je vais tester pour voir si ça marche
je te tiens au courant. merci encore.
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
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
Messages postés
182
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
25 décembre 2009

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
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
J'ai pas trop compris ta question si tu peut détaillé.

Signer Ralebole
Messages postés
182
Date d'inscription
lundi 13 mars 2006
Statut
Membre
Dernière intervention
25 décembre 2009

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

}


}






 
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
Je ne comprend pas l'impression marche chez moi.
Pour tes codes va voir tes messages privé.


Signer Ralebole.