AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Form blendet sich einfach aus / Timer läuft nicht ab !!!
Thema durchsuchen
Ansicht
Themen-Optionen

Form blendet sich einfach aus / Timer läuft nicht ab !!!

Ein Thema von -=cats=- · begonnen am 13. Dez 2006 · letzter Beitrag vom 14. Dez 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#1

Form blendet sich einfach aus / Timer läuft nicht ab !!!

  Alt 13. Dez 2006, 14:16
Hi

Ich wollte eine Form einblenden lassen, wenn in
einem bestimmten Ordner eine Datei geändert / gelöscht (
eingefügt (was auch immer) wird.
Also dachte ich mir, mache ich das über das
AlphaBlend (das Einblenden). Ich habe den Wert auf 0 gesetzt
und erhöhe ihn in einer Schleife solange, bis
die Form komplett zu sehen ist.
Das funktioniert auch alles.
Jetzt wollte ich, das die Form so für ca. 15 Sek.
angezeigt wird, und sich danach wieder schließt.
Dafür habe ich einen Timer genommen und seine
Zeit entsprechend eingestellt. Nur blendet sich
die Form jetzt nach ein paar Sekunden einfach aus.
Den Timer beachtet sie scheinbar gar nicht.
Ich finde den Fehler einfach nicht ...

Hier ist mal mein Quellcode:
Ich hoffe, ihr könnt mir vielleicht helfen ...


Delphi-Quellcode:


procedure TForm19.ShellChangeNotifier1Change;
var i : integer;
begin
  Form25.Show;

 for i := 0 to 255 do begin
  Form25.AlphaBlendValue := Form25.AlphaBlendValue + 1;
  if (Form25.AlphaBlendValue = 255)
  then
     Timer1.Enabled := true;
   end;
end;

procedure TForm19.Timer1Timer(Sender: TObject);
begin
  Form25.Close;
  Form25.AlphaBlendValue := 0;
  Form19.SetFocus;
end;
Gruß,
-=cats=-
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:21
Du schließt das Formular im Timer-Ereignis doch einfach. Zudem setzt du den Alphavalue sofort auf 0 wodurch es auch zu 100% transparent wird.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:27
Hmm ... ja schon.
Aber sie soll sich ja auch schließen, wenn
die Zeit abgelaufen ist ...
Oder ist das TimerEreignis falsch ?
Ich dachte, das wird dann aktiv, wenn der
Timer abgelaufen ist ...
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:34
ich verstehs nicht ganz. Du willst das dein Form sich nach einer gewissen zeit wieder ausblendet. Gleichzeitig schreibst du aber auch das sich dein Form nach ein paar Sekunden ausblendet. Willst du das denn oder doch nicht?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:38
Ist der Timer vielleicht schon von Programmstart an aus Versehen eingeschaltet?
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:42
Er will es, aber erst nach dem Timer1.Interval abgelaufen ist.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 14:43
Ok, ich kann das glaub ich grad nicht ganz rüber bringen
Ich schreibe einfach mal die einzelnen Schritte auf, die
mein Programm machen soll

Programm wird gestartet (Form19)
Mein ShellChangeNotifier stellt fest "Oh, da ist gerade eine Datei eingegangen"
Form25 blendet sich langsam ein (über AlphaBlend). Sie wird also immer deutlicher
zu erkennen.
Damit der Benutzer sie nicht wegklicken muss, bleibt sie für 15 Sekunden eingeblendet
(voll sichtbar --> AlphaBlendValue = 255)
Die 15 Sekunden sind um, also --> weg mit Form25

Ich hoffe, so ist es etwas klarer ...

Der Timer sitzt auf false. (Am Anfang).
Habe ich im OI eingestellt.

//edit:
Zitat von inherited:
Er will es, aber erst nach dem Timer1.Interval abgelaufen ist.
Ja genau. Wenn der Timer abgelaufen ist (so dachte ich mir das) soll sich die Form ausblenden.

Kann es vielleicht an dem Event vom ShellChangeNotifier liegen ?
Vielleicht kann der ja nur ganz kurz eine Aktion ausführen ...


// edit 3:

So, ich habe jetzt mal ein Sleep eingebaut.
Jetzt funktioniert es. Das Problem ist nur, das auf einmal keine Labels
mehr auf der Form angezeigt werden. Ich sehe nur den Hintergrund der
Form
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 16:11
Welches Interval hat dein Timer?
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von -=cats=-
-=cats=-

Registriert seit: 22. Sep 2006
128 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 16:16
Ich habe es auf 15000 gesetzt.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Form blendet sich einfach aus

  Alt 13. Dez 2006, 16:20
Kann es sein das du nur nicht das blenden des Forms siehst weil deine Schleife ersten zu schnell durchläuft und zweites die Messages zwischendurch nicht verarbeitet werden? Dadurch hat es dann für dich den Anschein das die Funktionalität des Timers nicht stimmt.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz