78 lines
2.5 KiB
C#
78 lines
2.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
|
|
namespace GZTW.WinForm.Controls
|
|
{
|
|
public partial class TimePicker : Form
|
|
{
|
|
GZDateTimePicker _gzdt = null;
|
|
public TimePicker(GZDateTimePicker GZDateTimePickerControl)
|
|
{
|
|
_gzdt = GZDateTimePickerControl;
|
|
InitializeComponent();
|
|
this.Location = MousePosition;
|
|
DrawButtons();
|
|
this.Text = _gzdt.DateTime.ToShortTimeString();
|
|
}
|
|
|
|
|
|
private void DrawButtons()
|
|
{
|
|
this.SuspendLayout();
|
|
int nColumnWidth = 85;
|
|
int nRowHeight = 29;
|
|
int nButtonWidth = 75;
|
|
int nButtonHeight = 23;
|
|
int nNumberOfRows=14;
|
|
int nNumberOfColumns=4;
|
|
|
|
DateTime dt=new DateTime(DateTime.Now.Year,DateTime.Now.Month, DateTime.Now.Day,8,0,0);
|
|
|
|
for(int row=0;row < nNumberOfRows; row ++)
|
|
{
|
|
for(int column=0;column < nNumberOfColumns; column++)
|
|
{
|
|
Button b = new Button();
|
|
b.FlatAppearance.BorderSize = 0;
|
|
b.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
|
b.Location = new System.Drawing.Point(column*nColumnWidth, row*nRowHeight);
|
|
b.Name = "btnRow" + row.ToString() + "Column" + column.ToString(); ;
|
|
b.Size = new System.Drawing.Size(nButtonWidth, nButtonHeight);
|
|
b.TabIndex = 0;
|
|
b.Text = dt.ToShortTimeString();
|
|
b.UseVisualStyleBackColor = true;
|
|
b.Tag = dt;
|
|
b.Click += new System.EventHandler(this.btn_Click);
|
|
Controls.Add(b);
|
|
dt = dt.AddMinutes(15);
|
|
}
|
|
}
|
|
|
|
|
|
this.ResumeLayout(false);
|
|
}
|
|
|
|
private void btn_Click(object sender, EventArgs e)
|
|
{
|
|
DateTime dtOld = DateTime.Today;
|
|
|
|
if (_gzdt.Value != null)
|
|
dtOld = _gzdt.DateTime;
|
|
|
|
DateTime dt=(DateTime)((Button)sender).Tag;
|
|
DateTime dtNew = new DateTime(dtOld.Year,dtOld.Month,dtOld.Day,dt.Hour,dt.Minute,0);
|
|
_gzdt.Value = dtNew;
|
|
this.Close();
|
|
|
|
|
|
|
|
}
|
|
}
|
|
}
|