Solved

Generate Ordered Numbers (Starting at a Specified #)

Posted on 2006-06-20
11
255 Views
Last Modified: 2010-04-05
Hello All;
This is a bit of an "Must Have" issue.

I need to have a function that will Generate Numbers from a {Starting # that I specify} into the beginning of every line in a RichEdit.
For Example: (Have a TEdit, to allow for Starting Number Insertion)

Line line line line
Line line line line
Line line line line

In this example, I need to start the Number out at: [6] so it would be something like this
6 Line line line line
6 Line line line line
6 Line line line line


Please someone, have any idea's on this one?
Carrzkiss
0
Comment
Question by:Wayne Barron
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
  • 2
  • +1
11 Comments
 
LVL 3

Expert Comment

by:KyleyHarris
ID: 16940704
do you mean something like

6 line line line
7 line line line
8 line line line

I take it you already know how to insert text into a richedit? using SelPos, and SelText?

So what you need to do is determine what line number you want to start on, and then seek the endofline and insert the text.
Are you also wanting to remove numbers from the richedit if you call the routine again with a different starting number?

What control specifically do you want to do this with, Tedit, or TRichEdit? it makes a difference
0
 
LVL 10

Expert Comment

by:atul_parmar
ID: 16940737
var
  s, i : integer;
begin
  s := 10;
  for i := 0 to RichEdit1.Lines.Count - 1 do
    RichEdit1.Lines.Strings[i] := inttostr(s + i) + RichEdit1.Lines.Strings[i];
end;
0
 
LVL 10

Expert Comment

by:atul_parmar
ID: 16940745
If you dont want to increment the starting number then

var
  s, i : integer;
begin
  s := 10; // your starting number
  for i := 0 to RichEdit1.Lines.Count - 1 do
    RichEdit1.Lines.Strings[i] := inttostr(s) + RichEdit1.Lines.Strings[i];
end;

0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 31

Author Comment

by:Wayne Barron
ID: 16941254
Yes Harris
6 line line line
7 line line line
8 line line line
That is what I meant. Sorry about that, was 1/2 a sleep while writing it.

Atul, I will get back with you sometime after while if this code is what I need.
The one thing that I do not see in either of the codes that you have supplied here
Is a way to manually change the beginning #, like a Edit1.text...

Thanks a bunch guys
0
 
LVL 31

Author Comment

by:Wayne Barron
ID: 16941263
Harris.
The Starting # would be a TEdit
The lines are contained in a TRichEdit.
(If that is what you are asking about)
And no, I will not be having to Remove the Numbers.
This will be used as a 1-time thing.

Thanks
0
 
LVL 10

Expert Comment

by:atul_parmar
ID: 16941279
var
  i : integer;
begin
  for i := 0 to RichEdit1.Lines.Count - 1 do
    RichEdit1.Lines.Strings[i] := Edit1.Text + RichEdit1.Lines.Strings[i];
end;
0
 
LVL 31

Author Comment

by:Wayne Barron
ID: 16941314
Sorry Atul.
I think that I goofed at the beginning of the post.
And you probably have not read my comment that cleared up my mistake.

I need the numbers to be like so:

Line line line line
Line line line line
Line line line line

In this example, I need to start the Number out at: [6] so it would be something like this
6 Line line line line
7 Line line line line
8 Line line line line

They need the numbers to be Ordered, (NOT) Rambom, and not just 1-single #

Sorry about the confusement.
I was 1/2 a sleep, when I wrote the starting of this Post/Question.
0
 
LVL 10

Accepted Solution

by:
atul_parmar earned 500 total points
ID: 16941356
var
  s, i : integer;
begin
  s := StrToInt(Edit1.Text);
  for i := 0 to RichEdit1.Lines.Count - 1 do
    RichEdit1.Lines.Strings[i] := inttostr(s + i) + RichEdit1.Lines.Strings[i];
end;


If you are using D7 above, use TryStrToInt instead of StrToInt function.
0
 
LVL 15

Expert Comment

by:mikelittlewood
ID: 16941411
var
  s, i, code : integer;
begin

  // first check that you have a valid integer to work with
  val( Trim(edit1.text), i, code)
  if code = 0 then
    s := i
  else
    exit;

  // now loop
  for i := 0 to RichEdit1.Lines.Count - 1 do
    RichEdit1.Lines.Strings[i] := inttostr(s + i) + RichEdit1.Lines.Strings[i];
end;
0
 
LVL 31

Author Comment

by:Wayne Barron
ID: 16945005
Sorry Mike.
I had already accepted "atul" as Answer.
Thank you for your time anyway.

Thank you both
0
 
LVL 15

Expert Comment

by:mikelittlewood
ID: 16949343
no problem :)
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Delphi: how to implement a User Shortcut mapper? 1 138
Delphi Yen format 3 62
Tidtcpserver listening on multiports? 1 46
Using MMsystem To change audio input 1 20
In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question