Delphi-Forum.de Delphi-Library.de
C-Sharp-Forum.de C-Sharp-Library.de
Registrieren Login Suche Hilfe Sitemap
Programm welches Lesungen unterstützt
spacer
Autor Nachricht
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Mo 01.02.10 10:36  Antworten mit Zitat Beitrag melden
Hallo liebe Delphi Profis,
ich habe Programmidee, welche hoffentlich nich allzu kompliziert ist, leider aber sicher meinen Delphi-Horizont übersteigen würde.
Und zwar... Soll das Programm den Anwender unterstützen wenn er etwas Vorträgt/liest. Des heißt den Text müsste man eingeben können (mit Formatierung) und dann solte dieser in Wählbarer Geschwindigkeit gescrollt werden (natürlich der Text auch entsprechend groß), dazu wären noch vor- zurück und eine Pause-Taste hilfreich.

Leider habe ich bis auf Berechnungen in irgendwelcher geometrisches Körpern keinen PLan von delphi und habe die Befürchtung dass ich das nicht hinkriegen würde... Könnte mir jemand von euch solch ein Programm basteln oder aktive Unterstützung leisten? Als Gegenleistung kann ich leider nur einen Werbeplatz auf meinem Blog anbieten.

Fasst euch ein Herz ;)

Schönen Tag noch...

Felix


Moderiert von user profile iconNarses: Topic aus VCL (Visual Component Library) verschoben am Mo 01.02.2010 um 09:38
Private Nachricht sendenPosting in privater Nachricht zitieren
thepaine91
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star

Beiträge: 514
Dabei seit: 27.01.2009
Wohnort: Neckarsulm

Win XP
D6, C#
BeitragVerfasst: Mo 01.02.10 10:41  Antworten mit Zitat Beitrag melden
Hört sich jetzt garnicht so kompliziert an. Richedit für den Text bietet auch alle nötigen Formatierungen. Und das Scrollen wäre ganz simple über einen Timer zu lösen Pause dementsprechend einfach. Vor zurück sollte auch nicht so schwierig sein.
Fang das Projekt doch einfach mal an bei Fragen helfen wir dir gerne. ;)
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Mo 01.02.10 10:47  Antworten mit Zitat Beitrag melden
super, vielen dank für die schnelle antwort... werde mein glück mal versuchen... meld mich voraussichtlich morgen...

danke

felix
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Mo 01.02.10 21:31  Antworten mit Zitat Beitrag melden
erstmal vorsichtshalber ein vorwort: ich bitte darum "lern erstmal die grundlagen!"-Aussagen erstmal zurückzustellen, ich werde delphi in der schule lernen step by step - so kommen auch keine schlechten angewohnheiten^^... außerdem vermute ich dass cih viele Fragen haben werde und ich die Moderatoren um Toleranz bitte, auch wenn sich das hier, mangels meiner kenntnisse, zu einem Chat entwickeln könnte :(

nun zum Thema: Habe jetzt ein neues projekt gemacht und ein richedit feld und 4 buttons (vor, zurück, pause, beenden) gemacht... und dann hörts schon auf :( wie sollte ich nun fortfahren?

bitte helft mir :(
Private Nachricht sendenPosting in privater Nachricht zitieren
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Nussknacker 2009 - 3. Rang

Beiträge: 841
Erhaltene Danke: 2
Dabei seit: 07.12.2007
Wohnort: Schönböken

win Vista, UBUNTU
Delphi 2005 Pers., Turbo Delphi, Delphi 7 Pers.
BeitragVerfasst: Mo 01.02.10 21:35  Antworten mit Zitat Beitrag melden
du könntest dir den TTimer mal näher anschauen.
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Mo 01.02.10 21:41  Antworten mit Zitat Beitrag melden
okay der ist drin, jetzt ist ein intervall von 1000 voreingestellt... ich glaube mal gehört zu haben dass 1000 1sekunde ist. jetzt müsste ich dem programm also irgendwie beipringen, dass er wenn der timer 2s läuft der die zeile n+1 und alle folgenden zeigen soll, richtig? wenn ja weiß ich jetz leider immernoch nich ansatzweise wie ich das in delphi umsetze :(

korrektur: ich müsste wohl dem timer als objekt sagen dass er wenn der intervall ausläuft, dem anderen objekt sagen soll dass es ab zeile n+1 zeigen soll und dann sich erneut starten soll bis keine zeile n+1 mahr da is, jetz richtig?
Private Nachricht sendenPosting in privater Nachricht zitieren
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Nussknacker 2009 - 3. Rang

Beiträge: 841
Erhaltene Danke: 2
Dabei seit: 07.12.2007
Wohnort: Schönböken

win Vista, UBUNTU
Delphi 2005 Pers., Turbo Delphi, Delphi 7 Pers.
BeitragVerfasst: Mo 01.02.10 21:55  Antworten mit Zitat Beitrag melden
jetzt richtig.

geht aber auch insofern einfacher, als dass das RichEdit die Funktion ScrollBy mitbringt. So. Das war jetzt aber echt genug info :P
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Mo 01.02.10 22:03  Antworten mit Zitat Beitrag melden
okay super, jetz hab ich erstmal nen plan und kann bissl probiern.... melde mich morgen mit meinen, hoffentlich weitreichenden, erbgebnissen

schönen abend noch
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Di 02.02.10 09:58  Antworten mit Zitat Beitrag melden
juhuu.. scrollen funktioniert schon mal in unterschiedlichen Geschwindigkeiten/Zeitabständen... vor geht auch... nur der zurück button will nicht... da entstehen dopplungen bei den buchstaben... das heißt ich habe eine zeile nach 5 mal zurück klicken gleich 5 mal. was kann ich dagegen tun?

PS: vielen dank erstmal bis hier her
Private Nachricht sendenPosting in privater Nachricht zitieren
JoelH
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star

Beiträge: 668
Dabei seit: 27.04.2003
Wohnort: Pfälzerwald, Burg Frankenstein

XP
D7E/D2007E
BeitragVerfasst: Di 02.02.10 10:20  Antworten mit Zitat Beitrag melden
user profile iconwers1 hat folgendes geschrieben Zum zitierten Posting springen:
was kann ich dagegen tun?


Einfach mal ein bisschen Code posten, damit wir daran teilhaben können. Fehlerquellen blind zu bestimmen ist wie einen unbekannten Text Weiß auf Weiß lesen zu wollen.

_________________
mfg. Joel
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Di 02.02.10 10:31  Antworten mit Zitat Beitrag melden
hier is er...

ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
7:
8:
procedure TForm1.startClick(Sender: TObject);
var
i,t : integer;
begin
val(zeitintervall.Text,t,i);
zeit.Interval:=t;
zeit.Enabled:=true;
end;


ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
procedure TForm1.zeitTimer(Sender: TObject);
begin
display.ScrollBy(0,-1);
end;


ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.pauseClick(Sender: TObject);
begin
zeit.Enabled:=false;
end;

procedure TForm1.vorClick(Sender: TObject);
begin
display.ScrollBy(0,-30);
end;

procedure TForm1.backClick(Sender: TObject);
begin
display.ScrollBy(0,10);
end;


das dürfe der ganze relevante code sein... das problem bei zurück button ist, dass der immer wieder von zeile 0 aus zurückspringen will...
Private Nachricht sendenPosting in privater Nachricht zitieren
martin300
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 179
Erhaltene Danke: 1
Dabei seit: 14.04.2008



BeitragVerfasst: Di 02.02.10 11:55  Antworten mit Zitat Beitrag melden
Hallo,
eine andere Möglichkeit wie sich Scrollen noch realisieren lässt wäre folgendes:
ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.btn1Click(Sender: TObject);
var
startPos : Integer;
endPos : Integer;
begin
// Beim erster Verwendung Cursor an
// gewünschte Startposition stellen
startPos := redt1.selstart;
endPos := startPos + 1;

redt1.selstart := endPos;
if redt1.selstart <> endPos then
begin
// Zeilenumbruch
redt1.selstart := startPos + 2;
redt1.Perform(EM_LINESCROLL,0,1);
end;
redt1.SetFocus;
end;

redt1 ist die Richedit Komponente. Das ganze einem Button zuweisen und sehen was passiert. Der Button dient als Ersatz für den Timer, damit der Code übersichtlicher ist.
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Di 02.02.10 13:26  Antworten mit Zitat Beitrag melden
habe die variante jetz einfach mal so übernommen, jedoch kommt da bissl was andres.. immer wenn cih auf den button klicke springt der 1 Zeichen weiter, beim nächsten mal wieder.. und so weiter..
Private Nachricht sendenPosting in privater Nachricht zitieren
martin300
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 179
Erhaltene Danke: 1
Dabei seit: 14.04.2008



BeitragVerfasst: Di 02.02.10 13:54  Antworten mit Zitat Beitrag melden
Naja, es war auch nicht so gedacht das es so zu übernehmen ist. Es soll nur zum Nachdenken anregen.
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Di 02.02.10 14:04  Antworten mit Zitat Beitrag melden
hmm... zum nachdenken hatte es mich auch angeregt ;)
aber leider versteh ich denk quellcode nich wirklich... gibts auch ne möglichkeit mit meinem unübersichtlichen quelltext das halbwegs hinzukriegen?
Private Nachricht sendenPosting in privater Nachricht zitieren
martin300
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 179
Erhaltene Danke: 1
Dabei seit: 14.04.2008



BeitragVerfasst: Di 02.02.10 14:25  Antworten mit Zitat Beitrag melden
Hast du beim Timer schon ein Ereignis, das regelmäßig aufgerufen wird. Dort kommt der Code hinein.
Private Nachricht sendenPosting in privater Nachricht zitieren
wers1
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

(Threadstarter)

Beiträge: 22
Dabei seit: 14.09.2009



BeitragVerfasst: Di 02.02.10 16:10  Antworten mit Zitat Beitrag melden
ahh... jetzt läuft er jede sekunde einen buchstaben weiter, scrollt aber nicht. (ich vermute dass er scollen würde wenn der text über das feld hinaus ginge, aber das ist ja ncih sinn der sache, dass der leser auf den text warten muss...
Private Nachricht sendenPosting in privater Nachricht zitieren
Blackheart666
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star

Beiträge: 2195
Dabei seit: 09.07.2005


XP
D3Prof, D6Pers.
BeitragVerfasst: Di 02.02.10 16:58  Antworten mit Zitat Beitrag melden
Wenn du nur zeilenweise scrollen möchtest dann nimm doch
RichEdit.Perform(EM_LINESCROLL,0,1);
für vor und
RichEdit.Perform(EM_LINESCROLL,0,-1);
zurück
Private Nachricht sendenPosting in privater Nachricht zitieren
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Nussknacker 2009 - 3. Rang

Beiträge: 841
Erhaltene Danke: 2
Dabei seit: 07.12.2007
Wohnort: Schönböken

win Vista, UBUNTU
Delphi 2005 Pers., Turbo Delphi, Delphi 7 Pers.
BeitragVerfasst: Di 02.02.10 19:40  Antworten mit Zitat Beitrag melden
hm Also ich verstehe wirklich nicht, was gegen die Mitgelieferte Funktion Richedit.Scrollby(X,Y) spricht. Also nur das Scrollen ist damit in 1 Zeile zu bewältigen. Um noch am anfang zu starten noch eine Zeile, macht unterm Strich 2...
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
martin300
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 179
Erhaltene Danke: 1
Dabei seit: 14.04.2008



BeitragVerfasst: Di 02.02.10 20:17  Antworten mit Zitat Beitrag melden
user profile iconFinnO hat folgendes geschrieben Zum zitierten Posting springen:
hm Also ich verstehe wirklich nicht, was gegen die Mitgelieferte Funktion Richedit.Scrollby(X,Y) spricht.

For future reference the EM_LINESCROLL message is what you send to any multi-line edit control to set the scroll position. You can scroll vertically or horizontally. See MSDN for details.
siehe: msdn.microsoft.com/e...bb761615(VS.85).aspx

Bzw. können es keine Koordinaten sein, da sich diese mit der Schriftgröße mit/ändern müssen.
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Beiträge vom vorherigen Thema anzeigen:   
home home