|
| Konvertere fra Basic til Delphi 6 Fra : MonieJacobsen | Vist : 603 gange 200 point Dato : 29-01-04 12:45 |
|
Hej
På opfordiring fra hustruen som intresseret sig for børnebogskrivning.
Med et gammelt Dos-program skrevet i Basic, indskrives teksen som nedstående koder.
Disse koder ønsker hun selv, at skrive, som så sener, kan hentes ind i et program
og der vises samt udskrives.
Det ser ud til, at posterne oprettes i den skrevet kode, for så sener i programmet,
at kunne indskrive "First Name, Last Name osv.
Da jeg ikke kender meget til programmering i Basic, ønsker jeg derfor mulighed for,
på samme princip,at kunne lave dette i Delphi 6.
Er det muligt?
Har du et lille program-stykke, jeg kan afprøve og arbejde videre med?
Eller kan du give mig nogle ider til hvordan dette evt. kan lade sig gører.
^AField_List
First Name^A (MF)
Last name^A
Nick Name^A (0) // (0) = valgmulighed
Mother's Name^A
Father's Name^A
First Visitors^A (0)
More FV1^A (0)
More FV2^A (0)
More FV3^A (0)
Hometown^A (0)
Hospital^A (0) // går til page 5
^APage 1
^AJustify Center
^AVertical_Center No
^ALine_Spacing 125
^AFont_Type DixonK
^AFont_Size 24
^APage 5
^IF Hospital
født på ^AHospital den ^ADate Of Birth.
^AELSE
født den ^ADate Of Birth.
^AENDIF
^AIF Time Of Birth
^AGender First Name Han^AHun^A
^AIF Weight
vejede ^AWeight,
^ELSE
^AENDIF
Med venlig hilsen
Monie Jacobsen
My mail adress is
monie at sunwind dot dk
| |
| Kommentar Fra : jrossing |
Dato : 29-01-04 14:26 |
|
Hej Monie
Skal det forstås sådan at programmet skal udskifte "Varialblerne" (Koderne) med indhold efter udfyldelse af disse?
Det lyder som en "nem" opgave at lave en template i Word der kan gøre det samme.
Ellers skal du nok lave det hele fra gunden i Delphi, men det skulle dog også være overkommeligt.
Prøv at se på funktionen StringReplace den udskifter en bestemt tekst med en anden.
Noget i retning af Nystreng := StringReplace(Streng, 'Mother's Name^A', MothersName, [rfReplaceAll]);
Hvor MothersName indeholder selve navnet.
Hele teksten skal så gennemløbes med en StringReplace for hver linie for hver variable. Der kan selvfølgelig også laves en søgning så der kun laves en udkiftning på de linier hvor der er en forekomst.
Håber at ovenstående kan hjælpe.
Mvh
jrossing
| |
|
Hej Jrossing
Handlingsforløbet ønskes!
First Name^A (MF) Last name^A Med denne tekst skal Delphi skabe en TDBEdit på Form'en.
Og med If else skal handlinger vælges.
Og for Page 1 skal de skrevende font, størrelse m.v opsættes for den pågældende side.
Så alt hvad skrives i en TXT fil, skal danne grundlag for opsætning og udskrivning.
Vil du ringe til mig, så skal jeg nok ringe tilbage. Jeg har svært med at udtrykke mig heldt klart!
Tlf: 62 26 25 22
Med venlig hilsen
Monie Jacobsen
| |
| Kommentar Fra : oldwiking |
Dato : 29-01-04 17:54 |
|
Lidt pillearbejde men hvis det er en gammel basic så skulle problemet kunne løses med en oversætter skrevet i Delphi, men hvorfor ikke ligeså godt spendere lidt tid på Delphi.
Undskyld at jeg blander mig men giver gerne en hånd.
Mvh OW
| |
|
Hej Oldwiking
Kan man lave det sådan i Delphi, at de mange historie konen har skrevet, i det gamle dos program,
kan oversættes som det er skrevet og vises i RichEdit samt derefter udkrives?
Vi snakker om 26 bøger. Har alle filene som *.txt
Så en oversætter skrevet i Delphi vil være det rigtig.
Monie Jacobsen
My mail adress is
monie at sunwind dot dk
| |
| Kommentar Fra : oldwiking |
Dato : 29-01-04 21:26 |
|
Ja jeg har lavet sådan sager før, men jeg må nok advare om at det kan blive en tidsrøver.
Basic er ikke så vel organiseret og kræver derfor ofte en metode med flere gennemløb før vi har
alle faktorene på plads.
Ved du i hvilke årgange din bekendt har har skrevet sine basic programmer ?
mvh OW
| |
| Kommentar Fra : oldwiking |
Dato : 29-01-04 21:47 |
|
Monie der er 2 muligheder en
A: Intepreter model som griber de oprindelige memonics og simpelthen udfører dem.
Praktisk hvis du forsat vil anvende den gamle codeform til at skrive nye programmer.
B: Code translater som convertere gamle coder til feks Delhi (pascal)
Praktisk hvis du engang for alle vil kunne genbruge din gamle code og derefter fortsætte i Delphi
OW
| |
|
Hej Oldwiking
Årgange på basic programmer, har jeg ikke, men den kan kun kørere i Dos mode.
Konen vil hels skrive som hun plejer! Der kan vi mænd jo ikke gører noget vel!
B: Code translater som convertere gamle coder til feks Delhi (pascal)
Praktisk hvis du engang for alle vil kunne genbruge din gamle code og derefter fortsætte i Delphi
B metoden ser ud til at været det rigtige.
Vil give min kone programmet i fødselsgave, om 1mdr bliver hun 45år.
Med venlig hilsen
Monie Jacobsen
| |
| Kommentar Fra : jrossing |
Dato : 29-01-04 23:19 |
|
//Med et gammelt Dos-program skrevet i Basic, indskrives teksen som nedstående koder.
Disse koder ønsker hun selv, at skrive, som så sener, kan hentes ind i et program
og der vises samt udskrives.//
Er ovenstående 2 forskellige programmer?
| |
|
Lige et tillægs-Spørgamål, men måske ikke ligetil?
Jeg ønsker, at sende midt "AdresseKartotek.cds" hjem til mig selv, f.eks fra arbejde!
1: AdresseKartotek.cds som ligger i c:\karyotek\
2: Skal zip-pakkes.
3: Sendes- dette gør proceduren nedenfor.
4: Og omvend, når jeg er hjemme, skal AdresseKartotek.zip hentes og udpakkes i mappen
c:\karyotek\ (lige til brug).
Hvordan gøres dette automatisk, ved kun tryk på en knap send eller modtage-AdresseKartotek.
Proceduren herunder virker manuel men kan ikke selv pakke AdresseKartotek.
Benyttet Delphi 6 SMTP Fasnet komponent i proceduren her!
procedure TSend.LMDButton1Click(Sender: TObject);
begin
Progressbar1.Position:=0;
Timer1.Enabled:= True;
try
Progressbar1.Position:=0;
// TStringList med absolute stier til de filer der evt. skal vedhæftes
NMSMTP1.PostMessage.Attachments.Add('C:\Kartotek\AdresseKartotek.zip');
NMSMTP1.Connect;
NMSMTP1.SendMail;
NMSMTP1.Disconnect;
finally
NMSMTP1.Free;
end;
Timer1.Enabled:= False;
Label1.Caption:='Download complete...!';
end;
Med venlig hilsen
Monie Jacobsen
| |
|
Tak for svaret oldwiking.
| |
| Du har følgende muligheder | |
|
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.
Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
| |
|
|