熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

C#編程入門三部曲:增加響應用戶事件代碼

2013-11-13 10:11:04  來源: .NET編程 

  第三步 增加響應用戶事件代碼
  
  還有最後一步就可以大功告成了就是增加一個方法來捕捉按鈕點擊事件這裡就是指從攝氏到華氏的按鈕點擊代碼
  
  private void bnCtoF_Click(Object sender EventArgs e) {
  double dTempCel = ;
  double dTempFah = ;
  try { dTempCel = tTempCelTextToDouble(); }
  catch(Exception) {
  tTempCelClear();
  tTempFahClear();
  return;
  }
  dTempFah = *dTempCel+;
  tTempFahText = dTempFahToString();
  tTempFahFocus();
  tTempFahSelectionStart = ;
  tTempFahSelectionLength = ;
  tTempCelFocus();
  tTempCelSelectionStart = ;
  tTempCelSelectionLength = ;
  }
  
  第四行到第八行(也就是try 區中的一切)取回Celsius(攝氏)文本框中的數值如果它是一個雙字節數就將其存儲在dTempCel中否則就清除兩個文本框並退出接著用存儲在dTempCel
  
  中的值我們用第 行中的公式將相同的溫度存儲在Fahrenheit中將這個新的數值在 Fahrenheit(華氏)文本框中顯示 然後將光標放在每個文本框中以便將指針設置到開頭(如果不將指針設置到開頭我們就會看到一個長長的數字的結尾要看開頭就必須滾動鼠標)
  
  以下是Fahrenheit按鈕的代碼它將完成同樣的任務只不過是相反的處理
  
  private void bnFtoC_Click(Object sender EventArgs e) {
  double dTempCel = ;
  double dTempFah = ;
  try { dTempFah = tTempFahTextToDouble(); }
  catch(Exception) {
  tTempCelClear();
  tTempFahClear();
  return;
  }
  dTempCel = (dTempFah)/;
  tTempCelText = dTempCelToString();
  tTempCelFocus();
  tTempCelSelectionStart = ;
  tTempCelSelectionLength = ;
  tTempFahFocus();
  tTempFahSelectionStart = ;
  tTempFahSelectionLength = ;
  }
  
  接著我們需要將適當的點擊事件捕捉方法與按鈕的 Click事件聯系起來要完成這一步我們將以下兩行放在類的構造器中:
  
  bnCtoFClick += new EventHandler(thisbnCtoF_Click);
  bnFtoCClick += new EventHandler(thisbnFtoC_Click);
  
  最後請看完整的代碼
  
  using System;
  using SystemWinForms;
  
  public class TempConverter : SystemWinFormsForm {
  
  Label lTempFah = new Label();
  Label lTempCel = new Label();
  TextBox tTempFah = new TextBox();
  TextBox tTempCel = new TextBox();
  Button bnCtoF = new Button();
  Button bnFtoC = new Button();
  
  public TempConverter() {
  thisSetSize();
  thisBorderStyle = FormBorderStyleFixedDialog;
  thisText = +C -> +F / +F -> +C ;
  thisStartPosition = FormStartPositionCenterScreen;
  thisHelpButton = false;
  thisMaximizeBox = false;
  tTempCelTabIndex = ;
  tTempCelSetSize();
  tTempCelSetLocation();
  lTempCelTabStop = false;
  lTempCelText = C;
  lTempCelSetSize( );
  lTempCelSetLocation();
  tTempFahTabIndex = ;
  tTempFahSetSize();
  tTempFahSetLocation();
  lTempFahTabStop = false;
  lTempFahText = F;
  lTempFahSetSize();
  lTempFahSetLocation();
  bnCtoFTabIndex = ;
  bnCtoFText = C to F;
  bnCtoFSetSize();
  bnCtoFSetLocation();
  bnCtoFClick += new EventHandler(thisbnCtoF_Click);
  bnFtoCTabIndex = ;
  bnFtoCText = F to C;
  bnFtoCSetSize();
  bnFtoCSetLocation();
  bnFtoCClick += new EventHandler(thisbnFtoC_Click);
  thisControlsAdd(tTempCel);
  thisControlsAdd(lTempCel);
  thisControlsAdd(tTempFah);
  thisControlsAdd(lTempFah);
  thisControlsAdd(bnCtoF);
  thisControlsAdd(bnFtoC);
  //= new Control [] { tTempCel lTempCel tTempFah lTempFah bnCtoF bnFtoC };
  }
  
  public static void Main() {
  ApplicationRun( new TempConverter() );
  }
  
  private void bnCtoF_Click(Object sender EventArgs e) {
  double dTempCel = ;
  double dTempFah = ;
  try { dTempCel = tTempCelTextToDouble(); }
  catch(Exception) {
  tTempCelClear();
  tTempFahClear();
  return;
  }
  dTempFah = *dTempCel+;
  tTempFahText = dTempFahToString();
  tTempFahFocus();
  tTempFahSelectionStart = ;
  tTempFahSelectionLength = ;
  tTempCelFocus();
  tTempCelSelectionStart = ;
  tTempCelSelectionLength = ;
  }
  
  private void bnFtoC_Click(Object sender EventArgs e) {
  double dTempCel = ;
  double dTempFah = ;
  try { dTempFah = tTempFahTextToDouble(); }
  catch(Exception) {
  tTempCelClear();
  tTempFahClear();
  return;
  }
  dTempCel = (dTempFah)/;
  tTempCelText = dTempCelToString();
  tTempCelFocus();
  tTempCelSelectionStart = ;
  tTempCelSelectionLength = ;
  tTempFahFocus();
  tTempFahSelectionStart = ;
  tTempFahSelectionLength = ;
  }
  }
  
  結 語
  
  到此為止你看到了如何用C#進行編程的一個完整過程這個例子雖然很簡單但是麻雀雖小五髒俱全理解其中的原理後就可以大顯身手充分發揮C#的強大功能了
From:http://tw.wingwit.com/Article/program/net/201311/12818.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.