Entwickler-Ecke
Algorithmen, Optimierung und Assembler - Fortschritt einer For-Schleife in Progressbar`. Wie?
Larus - Mo 28.02.05 15:58
Titel: Fortschritt einer For-Schleife in Progressbar`. Wie?
Wie kann ich den Fortschritt meiner Forschleife in einer Progressbar anzeigen... Bisherige Versuch haben erst nichts dann 100 angezeigt weil das Programm während der Forschleife zu hängen scheint.
Stefan.Buchholtz - Mo 28.02.05 18:02
Titel: Re: Fortschritt einer For-Schleife in Progressbar`. Wie?
Larus hat folgendes geschrieben: |
Wie kann ich den Fortschritt meiner Forschleife in einer Progressbar anzeigen... Bisherige Versuch haben erst nichts dann 100 angezeigt weil das Programm während der Forschleife zu hängen scheint. |
Ruf in der Schleife Application.ProcessMessages auf - das sorgte dafür, das das Programm auch während die Schleife läuft, noch auf Benutzereingaben reagiert und seine Fenster neuzeichnet.
Stefan
Radioactive - Mo 28.02.05 18:13
Oder du rufst ProgressBar.Refresh; auf, dann wird es neu gezeichnet.
Larus - Mo 28.02.05 18:18
moment ich versuch es ma... Hab das Problem gehabt bei meiner Viginere Verschlüsselung das ich nie wusste wie weit die ist bei 5 000 000 000 Zeichen... Und hatte ne Auslagerungsdaei von Rund 2.5 GB und 0 MB Ram Frei... aber das is ja nebensache ;)
Larus - Mo 28.02.05 18:24
Jo es geht thx nur muss ich den Application Befehl bei jedem Durchlauf aufrufen also
Delphi-Quelltext
1: 2: 3: 4: 5:
| for i:=0 to 100000000 do begin Application.ProcessMessages; ... end; |
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt.
F34r0fTh3D4rk - Mo 28.02.05 18:36
du scheinst dich ja im moment sehr intensiv mit verschlüsselungen zu beschäftigen.
Larus - Mo 28.02.05 18:39
Ja! Wieso? Ist das schlimm? Ich will wenn ich fertig bin ein ziemlich kompliziertes Verschlüsselungssystem Coden!
F34r0fTh3D4rk - Mo 28.02.05 18:43
hab vorhin mal was kleines gemacht, deshalb:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| function encode(text: string): string; var i: byte; str: string; begin result:= ''; str:= text; for i:= 1 to length(str) do result:= result + chr(ord(str[i])+length(str)); end;
function decode(text: string): string; var i: byte; str: string; begin result:= ''; str:= text; for i:= 1 to length(str) do result:= result + chr(ord(str[i])-length(str)); end; |
Ist ganz lustig, wenn man nämlich dem verschlüsselten string noch ein
Zeichen dazugibt, dann isses net mehr so einfach zu knacken :D
Larus - Mo 28.02.05 18:48
Nicht schlecht. Wie nennt man diese sorte von verschlüsselung?
Larus - Mo 28.02.05 18:51
Was hältst du hiervon
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93:
| procedure TForm1.Sperren; Begin m_Input.Enabled:=False; m_Output.Enabled:=False; e_passwort.Enabled:=False; b_verschluessel.Enabled:=False; b_entschluessel.Enabled:=False; End;
procedure TForm1.Freigeben; Begin m_Input.Enabled:=True; m_Output.Enabled:=True; e_passwort.Enabled:=True; b_verschluessel.Enabled:=True; b_entschluessel.Enabled:=True; End;
procedure TForm1.b_VerschluesselClick(Sender: TObject); var b : boolean; i, itp : integer; sti, sp, sto : string; begin Sperren;
sti:=Uppercase(m_Input.Lines.Text); sp:=Uppercase(e_Passwort.Text); sto:=''; i:=1; While i<= Length(sp) Do Begin If (Ord(sp[i])<65) Or (Ord(sp[i])>91) Or (sp[i]=' ') Then Delete(sp,i,1) Else i:=i+1; End;
i:=1; While i<=Length(sti) DO Begin If (sti[i]='ä') Or (sti[i]='Ä') Then Begin sti[i]:='A'; Insert('E',sti,i+1); End; If (sti[i]='ö') Or (sti[i]='Ö') Then Begin sti[i]:='O'; Insert('E',sti,i+1); End; If (sti[i]='ü') Or (sti[i]='Ü') Then Begin sti[i]:='U'; Insert('E',sti,i+1); End; If (sti[i]='ß') Then Begin sti[i]:='S'; Insert('S',sti,i+1); End; i:=i+1; End;
Repeat sp:=sp+sp; Until Length(sp)>Length(sti); Delete(sp,Length(sti)+1,Length(sp)-Length(sti));
sto:=''; For i:=1 To Length(sti) Do Begin b:=False; If (Ord(sti[i])<65) Or (Ord(sti[i])>91) Or (sti[i]=' ') Then b:=True; If Not B=True Then Begin itp:=(Ord(sti[i])-65) + (Ord(sp[i])-65); If itp > 25 Then itp:=itp-26; sto:=sto + Chr(itp+65); End Else sto:=sto+sti[i]; End; m_Output.Lines.Text:=sto; m_Input.Lines.Text:=sti; e_Passwort.Text:=sp; Freigeben; end;
... end. |
m_... steht für Memo
e_... steht für Edit
und b_...Natürlich für Button
Moderiert von
Gausi: Code- durch Delphi-Tags ersetzt.
F34r0fTh3D4rk - Mo 28.02.05 18:51
Billig-Verschlüsselung-Selbst-Mache kA:
ich taufe sie: Length-Verschlüsselung, falls sie noch net existiert :?
Die Verschlüsselung sieht so schonmal net schlecht aus, werde sie demnächst mal testen
es gibt auch functionen,die beides tun, text codieren, wenn er codiert ist, wenn ers nicht ist, wirds decodiert :D
Larus - Mo 28.02.05 18:58
Wie ist die Adresse von diesem Sourceforg und wie krieg ich da nen Account? Dann lad ich das Prog wenn ich es weiterentwickelt hab in allen Stufen hoch
wulfskin - Mo 28.02.05 19:06
Larus hat folgendes geschrieben: |
Wie ist die Adresse von diesem Sourceforg und wie krieg ich da nen Account? Dann lad ich das Prog wenn ich es weiterentwickelt hab in allen Stufen hoch |
Diese Faulheit grenzt schon nahezu an Unverschämtheit.
Sourceforge heisst das Ding...
Larus - Mo 28.02.05 19:07
Tschuldige jetzt weiß ich auch arum ich Sourceforge nie gefunden hab :x
Delete - Mo 28.02.05 19:24
Sorry, aber der ganze Thread grenzt schon zum wiederholten Male an komplette Ignoranz. Du postest ohne dich vorher mal ein Stück informiert zu haben (Google oder Forensuche). Denk bitte nächstes mal vor dem Abschicken daran. :wink:
Larus - Di 01.03.05 17:21
Werd ich machen :lol: nur meinst du nicht das du mir das auch so per ICQ sagen kannst ohne mich so offensichtlich vor den anderen aufzuziehen??? :? :wink: Übrigens werd ich den obengezeigten Code noch etwas umschreiben
Delete - Di 01.03.05 17:38
Ich wollte dich nur darauf hinweisen. :) Wusste nicht, dass ich dir das über Icq mitteilen muss, nur weil du deine Nummer angegeben hast :P
Larus - Fr 04.03.05 11:13
ich dachte ich hab dich in meiner userliste und du mich :wink: aber müssen tust du es nicht
Delete - Fr 04.03.05 11:17
ja jetzt schon und jetzt ist schluss mit ot 8)
Larus - Fr 04.03.05 11:30
ot??? :lol:
Edit... hasse keine Schule :D
edit2... Und ich hab gelernt erstma bei google nachzugucken bevor ich nachfrage 8)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!