Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Alpha 0% (https://www.delphipraxis.net/61079-alpha-0-a.html)

CPP-Programmer 16. Jan 2006 20:45


Alpha 0%
 
Hallo,

ich möchte umbedingt den hintergrund der form durchsichtig machen und aber ein bild drauf. Das geht doch mit Alpha oder?

3_of_8 16. Jan 2006 21:10

Re: Alpha 0%
 
Genau. Steht auch in der OH. Kaum zu übersehen. ;)

CPP-Programmer 16. Jan 2006 21:10

Re: Alpha 0%
 
Ok danke.

Daniel G 16. Jan 2006 21:13

Re: Alpha 0%
 
Moment:

Soll das Bild auch durchsichtig werden? Wenn ja, ist oberer Ansatz richtig, wenn nicht, dann Suche in der OH nach Transparenz

CPP-Programmer 17. Jan 2006 13:19

Re: Alpha 0%
 
Nein man soll nur das bild sehen.

3_of_8 17. Jan 2006 13:30

Re: Alpha 0%
 
Also soll das Bild nicht transparent sein?

Was soll noch alles auf der Form sein?

CPP-Programmer 17. Jan 2006 13:35

Re: Alpha 0%
 
2 Buttons und 2 Textfelder zum eingeben.

TheAn00bis 17. Jan 2006 13:45

Re: Alpha 0%
 
Dafür könntest du die Eigenschaft Transparent Color nehmen, allerdings bräuchtest du eine Farbe, die im Bild nicht enhalten ist. [edit:] Fällt auch weg, hab nicht beac htet, dass Labels und Buttons auf der Form sind.
AlphaBlendValue fällt weg, da dann auch das Bild ausgeblendet wird. Du kannst aber Regions benutzen, such mal danach.

CPP-Programmer 17. Jan 2006 13:49

Re: Alpha 0%
 
Boa. :shock: Tut mir echt leid. Versteh grad nur Bahnhof. Kannst du's auch für dumme erklären?

3_of_8 17. Jan 2006 14:24

Re: Alpha 0%
 
Gibt es eine Farbe, die im Bild nicht vorkommt?

Ansonsten einfach bei der MainForm "transparent" auf True, Transparentcolor auf die nichtvorkommende Farbe, Color auch auf die nicht vorkommende Farbe.

CPP-Programmer 17. Jan 2006 14:39

Re: Alpha 0%
 
Doch leider schon. Aber ist auch nicht sooo schlimm. Nur noch eine frage. Wie mach ich es das es von alpha 0 bis alpa 100 in 3sec abgespielt wird o. so ä.?

3_of_8 17. Jan 2006 15:16

Re: Alpha 0%
 
Ich meinte, wenn eine Farbe drin nicht vorkommt, nimm die einfach. Probiers mal mit clFuchsia.

Für das "Verblassen" schreibst du:

Delphi-Quellcode:
start:=GetTickCount;
repeat AlphaBlendValue:=3000*255 div (GetTickCount-start+1) until GetTickCount>=start+3000;
Die Variable start muss ein Cardinal sein. Deklarier sie einfach.

"Entblassen" geht so:

Delphi-Quellcode:
start:=GetTickCount;
repeat AlphaBlendValue:=255-(3000*255 div (GetTickCount-start+1)) until GetTickCount>=start+3000;

CPP-Programmer 17. Jan 2006 16:47

Re: Alpha 0%
 
Zitat:

Zitat von 3_of_8
Die Variable start muss ein Cardinal sein. Deklarier sie einfach.

Ich hab ja schon einiges jetzt gelernt. Aber was ist ein Cardinal? Sind das nicht die im Vatikanstaat? :lol:

dfried 17. Jan 2006 16:50

Re: Alpha 0%
 
Zitat:

Zitat von CPP-Programmer
Ich hab ja schon einiges jetzt gelernt. Aber was ist ein Cardinal? Sind das nicht die im Vatikanstaat? :lol:

Steh am besten mal mit dem Cursor drauf und drück F1!
Cardinal ist ein Datentyp.

CPP-Programmer 17. Jan 2006 17:16

Re: Alpha 0%
 
Ahhh gut danke. Vielleicht noch kurz was dazwischen, was ist daran falsch
Delphi-Quellcode:
var eingabetext: textfile;
begin
write(eingabetext, edit1);
rewrite(eingabetext, 'c:\data.txt');
close(eingabetext);
end;
und stimmt das dann so:
Delphi-Quellcode:
procedure Tform1.createform(sender: Tobject);
var start: cardinal;
begin
start:=GetTickCount;
repeat AlphaBlendValue:=255-(3000*255 div (GetTickCount-start+1)) until GetTickCount>=start+3000;
end;

Rastaman 17. Jan 2006 17:21

Re: Alpha 0%
 
//Edit: Vergesst es, peil grad gar nix mehr, zu lange nix mehr mit typi und untypisierten Dateien gemacht :wall:

3_of_8 17. Jan 2006 17:24

Re: Alpha 0%
 
So ists richtig:

Delphi-Quellcode:
var eingabetext: textfile;
    str: String;
begin
assignfile(eingabetext,'C:\data.txt');
rewrite(eingabetext);
str:=edit1.text;
write(eingabetext, str);
closefile(eingabetext);
end;

CPP-Programmer 17. Jan 2006 18:08

Re: Alpha 0%
 
Ah gut. Und das andere? Hab ich das richtig gemacht?

3_of_8 17. Jan 2006 18:20

Re: Alpha 0%
 
LOL, das ist exakt mein Code. Copy & Paste, viel kann man da nicht falsch machen. Naja egal.

Probiers mal aus, dann siehst du schon, ob ein Fehler drin ist.

EDIT: Ich seh grade, da ist ein mathematischer Fehler von mir drin:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var start: cardinal;
begin
start:=GetTickCount;
repeat AlphaBlendValue:=255-(255*(GetTickCount-start+1) div 3000) until GetTickCount>=start+3000;
end;
Aber ich würde das eher nicht in FormCreate aufrufen, weils dann auch nicht geht.

CPP-Programmer 17. Jan 2006 18:37

Re: Alpha 0%
 
Ja. Bei mir gehts auch nicht mit formcreate. Wie denn dann?

3_of_8 17. Jan 2006 19:05

Re: Alpha 0%
 
Gute Frage. Auf jeden Fall in einer Prozedur, in der die Form schon gezeigt wurde.

Seltsamerweise gehts bei TForm.OnShow auch nicht.

CPP-Programmer 18. Jan 2006 14:09

Re: Alpha 0%
 
Zitat:

Zitat von 3_of_8
So ists richtig:

Delphi-Quellcode:
var eingabetext: textfile;
    str: String;
begin
assignfile(eingabetext,'C:\data.txt');
rewrite(eingabetext);
str:=edit1.text;
write(eingabetext, str);
closefile(eingabetext);
assignfile(eingabetext,'C:\data2.txt');
rewrite(eingabetext);
str:=edit2.text;
write(eingabetext, str);
closefile(eingabetext);
end;

Und noch kurz hier zu. Ich hab jetzt das so wie hier oben gemacht. Aber er gibt immer einen e/o error oder so aus. Warum?
Warum geht diese Form.Onshow oder auch die ganz normale createform nicht?
Wie beendent man ein programm komplett? (Ich hab einen button erstellt und ihm einfach den befehl close; zugewießen [ach ja ich hab 2 formen])
Wie kann man ein programm so programmieren das es sich mit dem taskmanager oder auch anders nicht schließen lässt. Also das man es nicht normal beenden kann, sodass man dem formular folgen muss, wenn z.b dort ein button mit exit ist. Wie geht sowas?

P.s.: Wollt nicht soviele topics aufmachen! Ihr wisst schon.

TheAn00bis 18. Jan 2006 14:45

Re: Alpha 0%
 
1. Es funktioniert dann nicht, weil die Form noch nicht komplett erstellt wurde. Kannst z. B. das OnActive nehmen (hatte das Problem auch vor kurzem)
2. Wenn du von der Hauptform aus close aufrufst ist das Programm komplett beendet, ansonsten mit application.terminate, was aber den Nachteil hat, dass die Ereignisse, die beim Schließen der Formen ausgeführt werden sollen nicht ausgeführt werden.
3. gibts schon zu viele threads zu

Eigentlich für jede Frage neuen Thread + Suche benutzen ;)

CPP-Programmer 18. Jan 2006 14:48

Re: Alpha 0%
 
Okey mach ich. Aber soooo mit dem Quelltext den ich oben angegeben hab, hab ich das noch nicht so verstanden was ich damit machen soll. Was war da jetzt genau?

3_of_8 18. Jan 2006 14:48

Re: Alpha 0%
 
"er gibt immer einen e/o error" ist wohl kaum eine gute Fehlerbeschreibung. Wie wäre es, wenn du mal sagst, WO genau der Fehler auftritt (mit Haltepunkten eingrenzen) und welcher es genau ist.

Cicaro 18. Jan 2006 15:34

Re: Alpha 0%
 
Zitat:

Zitat von CPP-Programmer
Ahhh gut danke. Vielleicht noch kurz was dazwischen, was ist daran falsch
Delphi-Quellcode:
var eingabetext: textfile;
begin
write(eingabetext, edit1);
rewrite(eingabetext, 'c:\data.txt');
close(eingabetext);
end;

Delphi-Quellcode:
var
  eingabetext:textfile;
  MyString:String;
begin
  AssignFile(eingabetext,'c:\data.txt')
  Rewrite(eingabetext);
  WriteLn(eingabetext,MyString);
  CloseFile(eingabetext);
end;
So kenn ich das. Gehört aber nicht in den Thread hier.
// edit: ups die zweite Seite übersehen

CPP-Programmer 18. Jan 2006 16:08

Re: Alpha 0%
 
Zitat:

Zitat von CPP-Programmer
Zitat:

Zitat von 3_of_8
So ists richtig:

Delphi-Quellcode:
var eingabetext: textfile;
    str: String;
begin
assignfile(eingabetext,'C:\data.txt');
rewrite(eingabetext);
str:=edit1.text;
write(eingabetext, str);
closefile(eingabetext);
assignfile(eingabetext,'C:\data2.txt');
rewrite(eingabetext);
str:=edit2.text;
write(eingabetext, str);
closefile(eingabetext);
end;


Hab eher gemeint ob des so richtig ist, weil er mir immer einen e/o error ausgibt.

3_of_8 18. Jan 2006 16:17

Re: Alpha 0%
 
Ist wohl eher ein E/A Fehler. Und ich erkenne da keinen Fehler im Code. Also sei so nett und sag mir die Fehlermeldung.

CPP-Programmer 18. Jan 2006 19:48

Re: Alpha 0%
 
Ja E/A Fehler genau. Was passiert da genau? Wie beheb ich das?

*Soll ich nen Screens. machen von dem error?

CG2003 18. Jan 2006 19:50

Re: Alpha 0%
 
Zitat:

Zitat von CPP-Programmer
*Soll ich nen Screens. machen von dem error?

Das wäre zumindest für uns alle hier für die Fehlersuche hilfreich...

3_of_8 18. Jan 2006 22:00

Re: Alpha 0%
 
Die Fehlernummer wäre auch ein Anfang. Und die Zeile, in der der Fehler auftritt.

Ich glaube, du hast keine Ahnung, wie viele E/A Fehler es gibt. Ziemlich viele.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz