如何手工制作钟表?
如果我理解的不错的话 你想做一个个性钟表吧? 配件都有卖的 具体的话 可以淘宝下的 其他什么数字啊 外框啊 可以自己DIY了 看你自己喜欢什么样子了的~
如何做钟表
首先要自己做好钟表的外壳后再装机芯啊,表芯要买的,就是半成品,那个做出来超个性,加油,祝你成功!!!
怎样制作时钟 – 时尚中国风剪纸时钟手工制作教程
首先是原材料了,如果你不会剪纸可以使用剪纸风格的包装纸代替 尺子,画图笔和钟芯自然也缺不了了~ 给你的钟芯也衬上可爱的底布~ 看一下大概的效果~ 很不错吧,在表盘上画上时间位置就可以了 可以根据自己的眼光替换不同花纹的底布或者包装纸,会得到更多效果的DIY时钟
儿童手工钟表怎么做
首先需要买一个机芯.
如何做手工钟表
一般的手表制作分为:外观机芯.外观包括壳表玻璃,钟面,表针.机芯很复杂,有各种尺寸各种形状,根据不同的外观可以配置.楼主要是想自己动手做钟表的话,我建议自己买机芯外观,然后自己组装.但是前提是楼主有这方面的知识或是基础,毕竟钟表虽小但是包含了所有机械行业的精华.而且钟表对外观的要求非常之严格,自己如果没有这方面的经验或是知识,还是不要自己动手.希望对楼主有所帮助!
如何制作小学生钟表
1、做幼儿手工制作钟表的工具和材料有:剪刀、铅笔、橡皮、彩色笔、彩色纸,胶水、直尺,纸杯、小木棍,如下图所示。
2、接着,画出钟表的钟面,圆形不好画圆,可取铅笔沿着纸杯的底座圆形在彩纸上画出圆形,如下图所示。(这样比直接手绘画的好些)
3、然后,用直尺把圆形分成四等分,并用黑色彩色笔写出时间的数字,如下图所示。
4、然后,把圆形继续等分,用黑色彩色笔写出中间的时间数字。并用绿色彩色笔在数字间添加分钟的小点,如下图所示。
5、接着,取出橙色、粉红色、橘色的卡纸,用黑色彩色笔在彩色卡纸上根据钟面的大小,画出时针、分针、秒针,如下图所示。
6、然后,用棕色彩色笔在卡纸上画出一个可爱的小熊的图形。(这是制作钟表的背景图形),如下图所示。
7、接着,用红色彩色笔给小熊的心形涂上颜色,裤子涂上蓝色,注意色彩的搭配。(小编这里用的是红色与蓝色,也可用其颜色组合),如下图所示。
8、然后,用剪刀把钟表图形和小熊的图形剪出来摆放在纸上,如下图所示。
9、接着,将钟表和时针、分针、秒针的顶端粘贴在小熊图形上,如下图所示。
10、然后,取小木棍穿过钟表和小熊的图形卡纸,这样钟表上的时针、分针、秒针就可以拨动了,如下图所示。
11、最后,把小木棍穿过纸杯,这样可爱小熊的钟表就可以立起来了。
怎样给孩子做手工钟表
孩子是一个家庭的希望,父母是这个希望成长壮大的第一位老师,所以从小就培养孩子的独立能力、动手能力等十分重要。
工具/原料
纸板、彩笔
涂料、卡通彩贴等
方法/步骤
可以拿出一张白纸,让宝宝在白纸上画出时刻数字,方形圆形都可以。然后自己用剪刀剪下来,进行修饰,就可以达到一个钟表了。
在一个圆形的白纸上,用彩笔点上每个时刻数的大概位置,让宝宝用卡通彩贴占在彩笔点点的地方,然后在中心位置弄上指针,并固定。
先在纸板上让宝宝涂鸦自己喜欢的动物或卡通画,然后在上面弄上时刻表,接着弄上能转动的指针。
还可以买儿童手工制作钟表的套件,买回来后自己安装,也可以锻炼孩子的动手能力。
此外,利用蛋糕托盘、方形盒等,也可以制作成钟表,用一些塑料或铜铁等物料做成指针,再涂上颜色,也能制作出很漂亮的钟表。
稍微大一点的宝宝,还可以让他自己创意,父母先做好一个架构,孩子再接着做一些添加,比如画上好看的事物。
用竹竿制作一个光影时钟需要哪些材料?历史几小时完成?
小竹竿一根,长20公分左右. 硬纸板一块 圆规一个, 大概20分钟可以完成.
制作时钟时钟
需要一个时间控件 Timer 下面是个代码 自己分析一下吧 看不太懂了可以加我QQ39518222我也是刚学的 咱们可以一起研究一下呀
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
Timer2: TTimer;
procedure windowsposchange(var Msg:TWMWINDOWPOSCHANGING);
message WM_WINDOWPOSCHANGING;
procedure Timer2Timer(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormPaint(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormResize(Sender: TObject);
private
{ Private declarations }
Hour, Minute, Second: Word; {当前时间}
OldMinute, OldSecond: Word; {旧时间}
XCenter, YCenter, Radius: Integer; {当前窗体大小}
public
{ Public declarations }
procedure DrawHand (XCenter, YCenter, Radius,
BackRadius: Integer; Angle: Real);
procedure DrawSecond;
end;
var
Form1: TForm1;
oleft:Integer;
otop:Integer;
owidth:Integer;
oheight:Integer;
implementation
{$R *.dfm}
procedure TForm1.Timer2Timer(Sender: TObject);
begin
self.Caption := ‘桌面时钟 ‘+datetimetostr(now);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
hesc:word;
begin
oldminute := minute;
oldsecond := second;
SysUtils.DecodeTime(time,hour,minute,second,hesc);
if oldminute = minute then
drawsecond
else
refresh;
end;
procedure tform1.DrawSecond;
var
Angle,OldAngle :real;
begin
oldangle := 2*pi*(oldsecond+45)/60;
drawhand(XCenter, YCenter, Radius,
Radius * 30 div 100, OldAngle);
angle := 2*pi*(second+45)/60;
drawhand(XCenter, YCenter, Radius,
Radius * 30 div 100, angle);
end;
procedure tform1.DrawHand(XCenter, YCenter, Radius,
BackRadius: Integer; Angle: Real);
begin
form1.Canvas.MoveTo(XCenter – Round (BackRadius * Cos (Angle)),
YCenter – Round (BackRadius * Sin (Angle)));
form1.Canvas.LineTo (
XCenter + Round (Radius * Cos (Angle)),
YCenter + Round (Radius * Sin (Angle)));
end;
procedure TForm1.FormPaint(Sender: TObject);
var
Angle: Real;
I, X, Y, Size: Integer;
begin
xcenter := clientwidth div 2;
ycenter := clientheight div 2;
if xcenter > ycenter then
radius := ycenter-10
else
radius := xcenter-10;
self.Canvas.Pen.Color := clblue;
self.Canvas.Pen.Mode := Graphics.pmCopy ;
self.Canvas.Brush.Color := clwhite;
size := radius div 50 +1;
for I := 0 to 11 do
begin
Angle := 2 * Pi * (I + 9)/12;
X := XCenter – Round(Radius*Cos(Angle));
Y := YCenter – Round(Radius*Sin(Angle));
Canvas.Ellipse (X – Size, Y – Size, X + Size, Y + Size);
end;
//画分针
self.Canvas.Pen.Width := 2;
self.Canvas.Pen.Color := clblue;
angle := 2*pi*(minute+45)/60;
DrawHand (XCenter, YCenter,
Radius * 90 div 100, 0, Angle);
Angle := 2 * Pi * (Hour + 9 + Minute / 60) / 12;//画时针
DrawHand (XCenter, YCenter,
Radius * 70 div 100, 0, Angle);
Canvas.Pen.Width := 1; //画秒针
Canvas.Pen.Color := clRed;
Canvas.Pen.Mode := pmNotXor;
Angle := 2 * Pi * (Second+45) / 60;
DrawHand (XCenter, YCenter, Radius,
Radius * 30 div 100, Angle);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
SELF.Timer1Timer(SELF);
OLEFT := LEFT;
OTOP := top;
owidth := width;
oheight := height;
self.Caption := ‘桌面时钟 ‘+ datetimetostr(now);
end;
procedure tform1.windowsposchange(var Msg:TWMWINDOWPOSCHANGING);
begin
Msg.WindowPos.x:=oleft;
Msg.WindowPos.y:=otop;
Msg.WindowPos.cx:=owidth;
Msg.WindowPos.cy:=oheight;
inherited;
end;
procedure TForm1.FormResize(Sender: TObject);
begin
Refresh;
end;
end.
如何制作简单的WPF时钟
1、首先在Expression Blend中画出时钟的样式;
2、建立时钟的程序辅助类;
3、将此时钟样式需要动态换掉的部分改成相应的绑定值。
由于具体步骤很多,这里只说说技术难点和要点,着重说明上述第2点部分。
// 时钟控件类:Clock.cs
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Timers;
using System.Windows.Threading;
namespace BrawDraw.Com.WPF.Clock.ControlLibrary
{
///
///
public class Clock : Control
{
private DispatcherTimer timer;
static Clock()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(Clock),
new FrameworkPropertyMetadata(typeof(Clock)));
}
protected override void OnInitialized(EventArgs e)
{
base.OnInitialized(e);
timer = new DispatcherTimer();
timer.Tick += new EventHandler(Timer_Tick);
timer.Start();
}
private void Timer_Tick(object sender, EventArgs e)
{
UpdateDateTime();
timer.Interval = TimeSpan.FromMilliseconds(1000 –
DateTime.Now.Millisecond);
}
private void UpdateDateTime()
{
this.DateTime = System.DateTime.Now;
}
#region DateTime property
public DateTime DateTime
{
get
{
return (DateTime)GetValue(DateTimeProperty);
}
private set
{
SetValue(DateTimeProperty, value);
}
}
public static DependencyProperty DateTimeProperty =
DependencyProperty.Register(
“DateTime”,
typeof(DateTime),
typeof(Clock),
new PropertyMetadata(DateTime.Now,
new PropertyChangedCallback(OnDateTimeInvalidated)));
public static readonly RoutedEvent DateTimeChangedEvent =
EventManager.RegisterRoutedEvent(“DateTimeChanged”,
RoutingStrategy.Bubble, typeof(RoutedPropertyChangedEventHandler
typeof(Clock));
protected virtual void OnDateTimeChanged(DateTime oldValue,
DateTime newValue)
{
RoutedPropertyChangedEventArgs
new RoutedPropertyChangedEventArgs
args.RoutedEvent = Clock.DateTimeChangedEvent;
RaiseEvent(args);
}
private static void OnDateTimeInvalidated(DependencyObject d,
DependencyPropertyChangedEventArgs e)
{
Clock clock = (Clock)d;
DateTime oldValue = (DateTime)e.OldValue;
DateTime newValue = (DateTime)e.NewValue;
clock.OnDateTimeChanged(oldValue, newValue);
}
#endregion
}
}
// 时钟内部时针、分针、秒针角度计算及星期显示的类: ClockConverters.cs
// 由于WPF中旋转角度是以度单位,计算为绕一个圆周时,为360度。所以,计算时以360度来计算。
using System;
using System.Globalization;
using System.Windows.Data;
namespace BrawDraw.Com.WPF.Clock
{
// 一分钟60秒,一周为360度,所以,一秒钟就占6度,所以是:秒数×6。
[ValueConversion(typeof(DateTime), typeof(int))]
public class SecondsConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter,
CultureInfo culture)
{
DateTime date = (DateTime)value;
return date.Second * 6;
}
public object ConvertBack(object value, Type targetType, object parameter,
CultureInfo culture)
{
return null;
}
}
// 一小时是60分钟,一周为360度,所以,一分钟就占6度,所以是:分钟数×6。
[ValueConversion(typeof(DateTime), typeof(int))]
public class MinutesConverter : IValueConverter
{
public object Convert(object value, Type targetType,
object parameter, CultureInfo culture)
{
DateTime date = (DateTime)value;
return date.Minute * 6;
}
public object ConvertBack(object value, Type targetType,
object parameter, CultureInfo culture)
{
return null;
}
}
// 时钟上显示12小时,一周为360度,这样,每小时占30度,考虑分钟所占角度是分钟数/2,
所以结果是:小时数×30 + 分钟数/2。
[ValueConversion(typeof(DateTime), typeof(int))]
public class HoursConverter : IValueConverter
{
public object Convert(object value, Type targetType,
object parameter, CultureInfo culture)
{
DateTime date = (DateTime)value;
return (date.Hour * 30) + (date.Minute / 2);
}
public object ConvertBack(object value, Type targetType,
object parameter, CultureInfo culture)
{
return null;
}
}
[ValueConversion(typeof(DateTime), typeof(string))]
public class WeekdayConverter : IValueConverter
{
public object Convert(object value, Type targetType,
object parameter, CultureInfo culture)
{
DateTime date = (DateTime)value;
return date.DayOfWeek.ToString().Substring(0,3);
}
public object ConvertBack(object value, Type targetType,
object parameter, CultureInfo culture)
{
return null;
}
}
}