找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
尊貴會員無限觀看附件圖片尊貴會員無限看帖不用回覆儲值後自動升級用戶組
我的英雄波多野結偷拍cosplay催眠3dmg
新倚天屠vec 533爱玩夫妻まとう人妻悪魔を誘breeding

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

[簡]單人房、日照一般

[繁]Re:Monster 04-

華為手機 AI讓女生一

[繁]魔法科高中的劣等

石碇國道5號 女警處理

[繁]月光下的異世界之
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 4784|回復: 0
打印上一主題下一主題

[求助]C# 用委派寫 介面(+-*/)[複製鏈接]

Rank: 1

帖子
76
積分
193 點
潛水值
4402 米
樓主
發表於 2017-3-12 10:54 PM|顯示全部樓層
本帖最後由 跨越青春嶺 於 2017-3-12 10:57 PM 編輯

供您參考,這樣或許更清楚明瞭.........?
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Windows.Forms;

  4. namespace HW_11271158
  5. {
  6.     public partial class Form1 : Form
  7.     {
  8.         private delegate double Cal(int a, int b);

  9.         private Cal _cal = new Cal(ADD);

  10.         public Form1()
  11.         {
  12.             InitializeComponent();
  13.             addRadioButton.CheckedChanged += new EventHandler(operation_CheckedChanged);
  14.             subRadioButton.CheckedChanged += new EventHandler(operation_CheckedChanged);
  15.             mulRadioButton.CheckedChanged += new EventHandler(operation_CheckedChanged);
  16.             divRadioButton.CheckedChanged += new EventHandler(operation_CheckedChanged);
  17.         }

  18.         private void operation_CheckedChanged(object sender, EventArgs e)
  19.         {
  20.             var currentRadioButton = sender as RadioButton;
  21.             var operation = new Dictionary<string, Cal> {
  22.                { "ADD", ADD },
  23.                { "SUB", SUB },
  24.                { "MUL", MUL },
  25.                { "DIV", DIV },
  26.             };
  27.             _cal = operation[currentRadioButton.Tag.ToString()];
  28.         }

  29.         private static double ADD(int a, int b)
  30.         {
  31.             return a + b;
  32.         }

  33.         private static double SUB(int a, int b)
  34.         {
  35.             return a - b;
  36.         }

  37.         private static double MUL(int a, int b)
  38.         {
  39.             return a * b;
  40.         }

  41.         private static double DIV(int a, int b)
  42.         {
  43.             return a / b;
  44.         }

  45.         private void button1_Click(object sender, EventArgs e)
  46.         {
  47.             var a = int.Parse(textBox1.Text);
  48.             var b = int.Parse(textBox2.Text);
  49.             textBox3.Text = _cal(a, b).ToString();
  50.         }
  51.     }
  52. }
複製代碼


...
瀏覽完整內容,請先 註冊登入會員
若對尊貴或贊助會員有任何疑問,歡迎向我們查詢。我們的即時通或MSN: admin@eyny.com

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部