發表文章

目前顯示的是 5月, 2008的文章

掃描裝置上的GPS是哪一個COM

在" 在PDA上開發GPS的程式問題 這篇文章中,有提到要如何去看GPS是在哪一個COM Port上面;一般來說有兩個方式,一個是自己去掃描,另一種方式就是借助別人的軟體去看了;下面這邊我做了一個簡單的掃描程式,有興趣的朋友可以參考看看 Imports System.IO.Ports Imports System.Text Public Class Form1 Dim strPortName As String = "" Dim strTmp As String = "" Dim B(199) As Byte Dim intReturn As Integer = 0 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load SerialPort1.BaudRate = 4800 SerialPort1.DataBits = 8 SerialPort1.Handshake = Handshake.None SerialPort1.StopBits = StopBits.One SerialPort1.Parity = Parity.None SerialPort1.ReadTimeout = 2500 For Each s As String In SerialPort.GetPortNames SerialPort1.PortName = s Try SerialPort1.Open() Threading.Thread.Sleep(200) intReturn = SerialPort1.Read(B, 0, B.Length) If intReturn > 0 Then strTmp = Encodi

Form.Show ? Form.ShowDialog ?

在討論區 請問close, dispose與form的關係 這篇文章中,提到有關Form的一些關閉事件的問題,其中有關ShowDialog的部分在Windows Form上面也是相同的,大家可以參考一下 你可以用下面程式碼來觀察事件發生的順序(我使用的是VB) Sub Form1_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed Debug.WriteLine(Now.Ticks & ": Form Closed..") End Sub Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing Debug.WriteLine(Now.Ticks & ": Form Closing..") End Sub Private Sub Form1_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Disposed Debug.WriteLine(Now.Ticks & ": Form Disposed..") End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.MinimizeBox = False End Sub 另外預設Form的右上角會是"X"(也就是允許最小化),在"X"的時候點下去,這時候是不會把Form關閉的,而是讓Form躲起來;而設定Me.MinimizeBox = False(不允許最小化),這時候右上角會變成"OK",這時候點選的時候會把Form關閉。 要特別注意的一點,當用ShowDialog的方式去呼叫表單出來的時候,要自行在關閉Form

DataGridView欄位計算總合

在 關於DataGridView的問題 這篇問題中,有網友提到了DataGridView總和的部分要如何去做,chhuang大有回覆了一篇,真是太神了,節錄問題與解決方式如下 問題 我想要計算DetailDataGridView金額的總計 還有就是以蛋糕為例 5*30=150 計算好填回金額內 然後總計的270元 我要寫入另外的textbox內 例如: 商品 數量 單價 金額 -------------------------------------------------- 牛奶 1 20 20 咖啡 2 50 100 蛋糕 5 30 150 總計 270 元 使用VB2005 解答 private void Form1_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Columns.Add("C1", typeof (string)); dt.Columns.Add("C2", typeof (int)); dt.Columns.Add("C3", typeof (int)); dt.Columns.Add("C4", typeof(int)); dt.Columns["C4"].Expression = "C2 * C3"; dt.Rows.Add("牛奶", 1, 20); dt.Rows.Add("咖啡", 2, 50); dt.Rows.Add("蛋糕", 5, 30); dataGridView1.DataSource = dt; textBox1.Text = dt.Compute("Sum(C4)", null).ToString(); } 相關參考 DataTable.Compute 方法 DataColumn.Expr

腦力激盪 - 我可以拿到幾個糖果?

今天看電視看到這個題目還滿有趣的,沒看過的朋友可以玩玩看;題目是這樣的 用1塊錢可以買到一個糖果,今天店家大優惠,3個糖果紙可以換一個糖果,請問,用15塊能夠得到幾個糖果呢? 先想想,答案就在下面了~ Ans:22個 15+5+1+1=22,為甚麼呢?首先用15塊買到15個糖果,15個糖果紙可以換到5個糖果,換來的5個糖果其中3個糖果紙可以再換到1個糖果,重點來了,換來的這1個糖果紙跟之前剩下的兩個糖果紙又可以換到一個糖果~~ 真是太神奇了~傑克~,我之前是算20個,沒想到看似簡單的題目暗藏這麼多的玄機啊~

WPF Sample

在 MSDN 上有提供相當多的WPF相關範例可以參考,對這部分有興趣的朋友可千萬別錯過了;原文位置如下 Windows Presentation Foundation 範例 節錄部分相關主題連結如下 WPF 入門範例 應用程式開發範例 WPF 基本概念範例 協助工具範例 控制項範例 資料範例 (WPF) 文件範例 (WPF) 圖形和多媒體範例 全球化和當地語系化範例 移轉和互通性範例

WPF學習日誌 ~ Canvas ~

之前我們有介紹WPF裡面的容器,這個是最後一個容器了,Canvas,它的主要特性其實就是利用絕對位置來排列控制項,下面我們用簡單的測試程式碼來看一下 Class Window1 Dim cv As Canvas Private Sub Window1_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded cv = New Canvas cv.Width = 300 cv.Height = 300 cv.Background = Brushes.AliceBlue For i As Integer = 0 To 4 Dim B As New Button B.Content = "_" & i.ToString Canvas.SetLeft(B, i * 20) Canvas.SetTop(B, i * 20) cv.Children.Add(B) Next Me.Content = cv End Sub End Class