Visual Studio 2008 CLR主控台應用程式
// DB1.cpp: 主要專案檔。
#include "stdafx.h"
#using <System.Dll>
#using <System.Data.Dll>
using namespace System;
using namespace System::Data;
using namespace System::Data::OleDb;
int main(array<System::String ^> ^args)
{
// 與指定的Access 資料庫建立連接
String^ connectionString = "provider=Microsoft.Jet.OLEDB.4.0;data source=D:\\PhoneBook.mdb;";
OleDbConnection^ myConn = gcnew OleDbConnection(connectionString);
//OdbcCommand^ cmd;
try
{
myConn->Open();
// 設定取樣標準
OleDbCommand^ myCommand = myConn->CreateCommand();
myCommand->CommandText ="SELECT 姓名, 電話, 地址, 郵區 FROM Phone ";
// 讀取資料
OleDbDataReader^ myReader = myCommand->ExecuteReader();
while (myReader->Read())
{
Console::WriteLine("姓名 = " + myReader["姓名"]);
Console::WriteLine("電話 = " + myReader["電話"]);
Console::WriteLine("地址 = " + myReader["地址"]);
Console::WriteLine("郵區 = " + myReader["郵區"]);
Console::WriteLine();
}
myConn->Close();
myConn->Open();
myCommand->CommandText ="INSERT INTO Phone VALUES ('李九九', '02-11112222', '台北市星光大道100號' , '00011') " ;
// 新增資料
myCommand->ExecuteNonQuery();
Console::WriteLine("新增完成!");
myCommand->CommandText ="SELECT 姓名, 電話, 地址, 郵區 FROM Phone ";
// 讀取資料
OleDbDataReader^ myReader2 = myCommand->ExecuteReader();
while (myReader2->Read())
{
Console::WriteLine("姓名 = " + myReader2["姓名"]);
Console::WriteLine("電話 = " + myReader2["電話"]);
Console::WriteLine("地址 = " + myReader2["地址"]);
Console::WriteLine("郵區 = " + myReader2["郵區"]);
Console::WriteLine();
}
}
catch (Exception^ e)
{
Console::WriteLine("Error: " + e);
}
catch (OleDbException^ ex)
{
Console::WriteLine(ex->ToString());
}
finally
{
myConn->Close();
}
}
資料庫為stdRec.mdbA9803001 林品潔 33 96 66 75 Average=67
A9803004 王曉華 60 75 75 77 Average=71
A9803005 王智明 44 59 83 74 Average=65
A9803007 李斌 34 56 58 89 Average=59*
A9803009 陳大川 43 31 80 94 Average=62
A9803010 楊智源 38 65 49 62 Average=53*
A9803012 黃美鳳 39 99 82 51 Average=67
A9803015 鍾智勝 92 44 67 46 Average=62
A9803021 陳大川 75 88 65 64 Average=73
A9803022 朱彰文 54 79 96 80 Average=77
A9803025 黃莉茉 64 61 83 99 Average=76
A9803029 曾山國 47 78 31 37 Average=48*
A9803030 李雄山 43 58 67 99 Average=66
A9803033 林莉貞 41 38 50 34 Average=40*
A9803039 陳均安 82 55 87 62 Average=71
A9803042 李素惠 31 90 72 49 Average=60
A9803043 王小寶 62 49 94 74 Average=69
A9803048 李明白 50 30 35 32 Average=36*
A9803050 曾美蓮 99 92 78 91 Average=90
A9803052 魏一林 77 52 99 39 Average=66
請按任意鍵繼續 . . .
-------------------------------------------------------------
// DB1.cpp: 主要專案檔。
#include "stdafx.h"
#using <System.Dll>
#using <System.Data.Dll>
using namespace System;
using namespace System::Data;
using namespace System::Data::OleDb;
int main(array<System::String ^> ^args)
{
// 與指定的Access 資料庫建立連接
int sc;
String^ tmp;
String^ connectionString = "provider=Microsoft.Jet.OLEDB.4.0;data source=d:\\stdRec.mdb;";
OleDbConnection^ myConn = gcnew OleDbConnection(connectionString);
//OdbcCommand^ cmd;
try
{
myConn->Open();
// 設定取樣標準
OleDbCommand^ myCommand = myConn->CreateCommand();
//myCommand->CommandText ="SELECT 課程A.學號,課程A.分數, 課程B.分數 FROM 課程A, 課程B WHERE 課程A.學號=課程B.學號";
myCommand->CommandText ="SELECT 學生資料表.學號, 姓名, 課程A.分數, 課程B.分數, 課程C.分數, 課程D.分數 from 學生資料表, 課程A, 課程B, 課程C, 課程D WHERE 學生資料表.學號=課程A.學號 and 學生資料表.學號=課程B.學號 and 學生資料表.學號=課程C.學號 and 學生資料表.學號=課程D.學號";
// 讀取資料
OleDbDataReader^ myReader = myCommand->ExecuteReader();
while (myReader->Read())
{
String^ tmp;
int sc=0;
Console::Write(myReader["學號"]);
Console::Write(" " + myReader["姓名"]);
Console::Write(" \t" + myReader["課程A.分數"]);
Console::Write(" " + myReader["課程B.分數"]);
Console::Write(" " + myReader["課程C.分數"]);
Console::Write(" " + myReader["課程D.分數"]);
//Console::WriteLine("電話號碼 = " + myReader["電話號碼"]);
//Console::WriteLine("聯絡地址 = " + myReader["聯絡地址"]);
tmp=myReader["課程A.分數"]->ToString();
sc+=System::Int32::Parse(tmp);
tmp=myReader["課程B.分數"]->ToString();
sc+=System::Int32::Parse(tmp);
tmp=myReader["課程C.分數"]->ToString();
sc+=System::Int32::Parse(tmp);
tmp=myReader["課程D.分數"]->ToString();
sc+=System::Int32::Parse(tmp);
sc/=4.0;
Console::Write(" Average=" + sc);
if(sc >= 60)
Console::WriteLine( " ");
else
Console::WriteLine( "*");
// Console::WriteLine("郵區 = " + myReader["郵區"]);
//Console::WriteLine();
}
}
catch (Exception^ e)
{
Console::WriteLine("Error: " + e);
}
catch (OleDbException^ ex)
{
Console::WriteLine(ex->ToString());
}
finally
{
myConn->Close();
}
}
Visual Studio 2008 Windows form 圖片移動 計畫名稱要一致#pragma once
namespace KeyBoard {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
/// <summary>
/// Form1 的摘要
///
/// 警告: 如果您變更這個類別的名稱,就必須變更與這個類別所依據之所有 .resx 檔案關聯的
/// Managed 資源編譯器工具的 'Resource File Name' 屬性。
/// 否則,這些設計工具
/// 將無法與這個表單關聯的當地語系化資源
/// 正確互動。
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: 在此加入建構函式程式碼
//
}
protected:
/// <summary>
/// 清除任何使用中的資源。
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
private: System::Windows::Forms::PictureBox^ pictureBox1;
protected:
private:
/// <summary>
/// 設計工具所需的變數。
String^ state;
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// 此為設計工具支援所需的方法 - 請勿使用程式碼編輯器修改這個方法的內容。
// String^ state;
/// </summary>
//System::ComponentModel::Container ^components;
/// </summary>
void InitializeComponent(void)
{
System::ComponentModel::ComponentResourceManager^ resources = (gcnew System::ComponentModel::ComponentResourceManager(Form1::typeid));
this->pictureBox1 = (gcnew System::Windows::Forms::PictureBox());
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBox1))->BeginInit();
this->SuspendLayout();
//
// pictureBox1
//
this->pictureBox1->Image = (cli::safe_cast<System::Drawing::Image^ >(resources->GetObject(L"pictureBox1.Image")));
this->pictureBox1->Location = System::Drawing::Point(110, 53);
this->pictureBox1->Name = L"pictureBox1";
this->pictureBox1->Size = System::Drawing::Size(61, 56);
this->pictureBox1->SizeMode = System::Windows::Forms::PictureBoxSizeMode::StretchImage;
this->pictureBox1->TabIndex = 0;
this->pictureBox1->TabStop = false;
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 12);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->BackColor = System::Drawing::Color::White;
this->ClientSize = System::Drawing::Size(290, 189);
this->Controls->Add(this->pictureBox1);
this->Name = L"Form1";
this->Text = L"鍵盤按鍵";
this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
(cli::safe_cast<System::ComponentModel::ISupportInitialize^ >(this->pictureBox1))->EndInit();
this->ResumeLayout(false);
}
#pragma endregion
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
this->KeyUp += gcnew KeyEventHandler(this, &KeyBoard::Form1::OnKeyPress);
state="Up";
}
public: void OnKeyPress(Object^ sender, KeyEventArgs^ e)
{
String^ skey = e->KeyCode.ToString(); // 取得按鍵名稱
if (skey=="Up") {
// 同向未碰到頂邊則向上移動
if ((pictureBox1->Top>=10) && state=="Up") {
pictureBox1->Top -= 10;
}
else
{
state = "Up";
pictureBox1->ImageLocation = "D:\\\ArrowU.gif";
}
}
if (skey=="Down") {
// 同向未碰到底邊則向下移動
if ((pictureBox1->Top <=this->Height-40-10) && state == "Down")
pictureBox1->Top += 10;
else
{
state = "Down";
pictureBox1->ImageLocation = "D:\\ArrowD.gif";
}
}
if (skey=="Left") {
// 同向未碰到左邊則向左移動
if ((pictureBox1->Left >= 10) && state == "Left")
pictureBox1->Left -= 10;
else
{
state = "Left";
pictureBox1->ImageLocation = "D:\\ArrowL.gif";
}
}
if (skey=="Right") {
// 同向未碰到右邊則向右移動
if ((pictureBox1->Left <= this->Width - 40 - 10) && state == "Right")
pictureBox1->Left += 10;
else
{
state = "Right";
pictureBox1->ImageLocation = "D:\\ArrowR.gif";
}
}
}
};
}
Visual Studio 2008 Windows form 畫矩形 計畫名稱要一致#pragma once
namespace mouse {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
/// <summary>
/// Form1 的摘要
///
/// 警告: 如果您變更這個類別的名稱,就必須變更與這個類別所依據之所有 .resx 檔案關聯的
/// Managed 資源編譯器工具的 'Resource File Name' 屬性。
/// 否則,這些設計工具
/// 將無法與這個表單關聯的當地語系化資源
/// 正確互動。
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
Form1(void)
{
InitializeComponent();
//
//TODO: 在此加入建構函式程式碼
//
}
protected:
/// <summary>
/// 清除任何使用中的資源。
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
bool mouseOn;
int x0,y0,x1,y1,w,h;
private:
/// <summary>
/// 設計工具所需的變數。
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// 此為設計工具支援所需的方法 - 請勿使用程式碼編輯器修改這個方法的內容。
///
/// </summary>
void InitializeComponent(void)
{
this->SuspendLayout();
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(8, 15);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(421, 374);
this->Name = L"Form1";
this->Text = L"Form1";
this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
this->ResumeLayout(false);
}
#pragma endregion
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
this->MouseDown +=gcnew MouseEventHandler(this, &mouse::Form1::OnMouseDown);
this->MouseUp +=gcnew MouseEventHandler(this, &mouse::Form1::OnMouseUp);
this->MouseMove +=gcnew MouseEventHandler(this, &mouse::Form1::OnMouseMove);
mouseOn=false;
}
private: System::Void OnMouseDown(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
x0=e->X;
y0=e->Y;
x1=e->X;
y1=e->Y;
mouseOn=true;
}
private: System::Void OnMouseUp(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
w=e->X-x1;
h=e->Y-y1;
if(w<0){
w=w*-1;
x0=e->X;
}
if(h<0){
h=h*-1;
y0=e->Y;
}
Refresh();
mouseOn=false;
}
private: System::Void OnMouseMove(System::Object^ sender, System::Windows::Forms::MouseEventArgs^ e) {
if( mouseOn){
w=e->X-x1;
h=e->Y-y1 ;
if(w<0){
w=w*-1;
x0=e->X;
}
if(h<0){
h=h*-1;
y0=e->Y;
}
Refresh();
}
}
protected: virtual void OnPaint(PaintEventArgs^ e) override{
Pen^ blackPen = gcnew Pen(Color::Black, 3);
e->Graphics->DrawRectangle(blackPen,x0,y0,w,h);
}
};
}
沒有留言:
張貼留言