animiertes Fenster

07/04/2008 - 14:45 von Adrian Hülsmann | Report spam
Hallo,

wie würdet ihr am ehesten ein Fenster realisieren, dass per Knopfdruck rauf
und runter fàhrt (es soll quasi wie eine Leinwand von einer Seite des
Bildschirms rein- und wieder rausfahren können)?

Liebe Grüße,
Adrian.
 

Lesen sie die antworten

#1 Frank Dzaebel
07/04/2008 - 15:44 | Warnen spam
Hallo Adrian,

wie würdet ihr am ehesten ein Fenster realisieren, dass per Knopfdruck
rauf und runter fàhrt (es soll quasi wie eine Leinwand von einer Seite des
Bildschirms rein- und wieder rausfahren können)?



Habe mal ein Beipiel über die Location-Eigenschaft
mit einem Timer und zusàtzlicher Opacity genommen:

private void Form2_Load(object sender, EventArgs e)
{
this.Location = new Point(-Width, -Height - Height /2);
this.Opacity = 0.0;
this.Show(); Timer timer = new Timer();
timer.Tick += new EventHandler(timer_Tick);
timer.Interval = 5; timer.Start();
lastX = Screen.GetWorkingArea(this).Width / 2;
lastX -= Width / 2;
}

int lastX;
const int locationOffset = 10;
const double opacityOffset = 0.01;

void timer_Tick(object sender, EventArgs e)
{
this.Location = new Point(Location.X + locationOffset,
Location.Y+locationOffset);
this.Opacity += opacityOffset;
if (Location.X > lastX)
{
((Timer)sender).Stop(); Opacity = 1.0;
}
}

es gibt Verbesserungsmöglichkeiten und Alternativen,
ist nur als Ansatz gemeint.


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen