iT邦幫忙

0

C++在Visual Studio的Form列印方法 丙級軟體設計求解

  • 分享至 

  • xImage

我最近剛從頭開始準備電腦軟體設計丙級的考試,遇到需要在Windows Form設定一個Button和PrintDocument,並在按下Button之後,列印考生答案和一些基本資料。考生的答案會先顯示在Windows Form上(有一個標準答案),按下列印答案的Button之後才會出現預覽文件的樣子。
我有買一本用C++解題的書,但我在他的網站上發現他全部都是用Visual Basic寫的,網路上也很少講到用C++列印那些的寫法。他用VB寫的是,直接在Button寫Call PrintDocument元件,然後在PD的程式碼部份寫要列印的資料和答案。
想請有看到的人能夠幫我解答一下或是有經驗可以分享給我,謝謝!

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
GJ
iT邦好手 1 級 ‧ 2022-08-18 09:33:49

GOOGLE 一下有很多程式代碼轉換的網站可以用

0
JamesDoge
iT邦高手 1 級 ‧ 2023-02-13 08:37:33
#include <cstdio>
#include <cstdlib>
#include <string>
#include <Windows.h>
#include <iostream>
#include <fstream>
#include <sstream>
#include <algorithm>
#include <vector>
#include <iomanip>
#include <cctype>
#include <locale>
using namespace std;

string studentData; // 用來儲存考生資料和答案的全局變數

// 列印文件的 PrintPage 事件處理函數
void printDocument_PrintPage(Object^ sender, System::Drawing::Printing::PrintPageEventArgs^ e)
{
    // 創建一個新的 Font
    System::Drawing::Font^ font = gcnew System::Drawing::Font("Arial", 12);
    // 創建一個新的 Brush
    System::Drawing::Brush^ brush = gcnew System::Drawing::SolidBrush(System::Drawing::Color::Black);
    // 將考生資料和答案寫入列印文件
    e->Graphics->DrawString(gcnew System::String(studentData.c_str()), font, brush, 50, 50);
}

// 按鈕的 Click 事件處理函數
void printButton_Click(Object^ sender, EventArgs^ e)
{
    // 創建一個新的 PrintDocument
    System::Drawing::Printing::PrintDocument^ printDocument = gcnew System::Drawing::Printing::PrintDocument();

    // 添加列印事件
    printDocument->PrintPage += gcnew System::Drawing::Printing::PrintPageEventHandler(printDocument_PrintPage);

    // 創建一個新的 PrintPreviewDialog
    System::Windows::Forms::PrintPreviewDialog^ printPreviewDialog = gcnew System::Windows::Forms::PrintPreviewDialog();

    // 將 PrintDocument 設置為預覽對話框的列印文件
    printPreviewDialog->Document = printDocument;

    // 顯示列印預覽對話框
    printPreviewDialog->ShowDialog();
}

我要發表回答

立即登入回答