Board Logo
« getting started, Pigeon Breeders Records program »

Welcome Guest. Please Login or Register.
Jan 21st, 2018, 12:48am


Conforums Terms of Service | Membership Rules | Home | Search | Recent Posts | Notification | Format Your Message | Installation FAQ

Please use the forums Search feature before asking.
Please post code using the code box described in Format Your Messages.
This will keep indentation, separate it better form the message and prevent gibberish.
If the code is too long for one post or additional files are needed, upload a ZIP archive to the Just BASIC Files Archive Site.

« Previous Topic | Next Topic »
Pages: 1 ... 7 8 9 10 11  Notify Send Topic Print
 veryhotthread  Author  Topic: getting started, Pigeon Breeders Records program  (Read 10843 times)
stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #120 on: Oct 4th, 2016, 4:18pm »

Hello tsh73 and thanks for looking into it so thoroughly and for your posts. It will be interesting to see what you found especially if, as it seems at first sight, that it is for the two line gap mystery, posted first in #106 .

As for the non-functioning second texteditor, I have been rounding things up, after doing as Rod advised so that both texteditors worked ok, apart from the empty lines, and have done both flying teams additions. There are now three principal handles to go with the three 'sections' and their screens: #intro. #main. and #minor. i.e. as it should have been all along smiley

https://www.filesanywhere.com/fs/v.aspx?v=8b71648e5f5f6fb5a2a0
« Last Edit: Oct 4th, 2016, 6:01pm by stumpy » User IP Logged

stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #121 on: Oct 4th, 2016, 6:15pm »

tsh73, your demo code in #119 makes it very clear why one or other screen did not work, and I now see that was the particular problem you have clarified.

Thank you for all of that but our posts crossed and in the meanwhile that problem has been avoided, because there is only one texteditor at a time!

In certain circumstances there are still a couple of lines missing though. Am still trying to understand that, while looking for another way to display the lists of birds, when each new one is added to a team.
« Last Edit: Oct 4th, 2016, 6:17pm by stumpy » User IP Logged

tsh73
JB-Supporter


member is offline

Avatar




PM

Gender: Male
Posts: 3636
xx Re: getting started with Prog for Pigeon Breeding
« Reply #122 on: Oct 5th, 2016, 02:15am »

well, the problem was "avoided"
But now problem is "figured out"
;)

About two lines gap.
First, I don't see any problem
- if you edit this textbox by hand, sure you can remove empty lines?
Second, if you want to make sure there are no empty lines then you add items, you can
1) get all text from texteditor
2) trim$ it - this removes all non-printable characters (code <=32, space too) from begin and end of string. So empty lines from the end is gone too.
3) print it back
4) add your new item.
Code:
nomainwin

    WindowWidth = 416
    WindowHeight = 215

    UpperLeftX=int((DisplayWidth-WindowWidth)/2)
    UpperLeftY=int((DisplayHeight-WindowHeight)/2)

    texteditor #main.text, 26, 16, 216, 120
    button #main.button2, "Add item", [button2Click], UL, 270, 16, 122, 25
    button #main.button3, "Add with TRIM", [button3Click], UL, 270, 56, 122, 25
    menu #main, "Edit"    '<--- Texteditor Menu can be moved but not removed.

    open "Sort items then add next one(s)" for window as #main
    print #main, "trapclose [quit.main]"

    for i = 3 to 1 step -1
        #main.text "Item";i
    next
    nextItem = 4

    wait

[quit.main]
    Close #main
    END


[button2Click]
    #main.text "Item"; nextItem
    nextItem = nextItem +1
    wait

[button3Click]
    'get all text - trim it (removing empty lines in the end) - put it back
    #main.text "!contents? txt$"
    txt$ = trim$(txt$)
    #main.text txt$
    'then add new line
    #main.text "Item"; nextItem
    nextItem = nextItem +1
    wait
 
« Last Edit: Oct 5th, 2016, 02:16am by tsh73 » User IP Logged

Q: "And if I took your codes and compile them, and sell them for a profit"?
A: Go ahead. I had my share of good then I coded it for fun, if you can make better use of it - please do.
(enjoying JB 1.01 on WinXP, netbook and desktop)
stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #123 on: Oct 5th, 2016, 04:14am »

on Oct 5th, 2016, 02:15am, tsh73 wrote:
well, the problem was "avoided"
But now problem is "figured out"
wink
how true!

Quote:
About two lines gap.
First, I don't see any problem
- if you edit this textbox by hand, sure you can remove empty lines?
yes and another odd thing has been that, once they have been introduced, they reappear at the next addition.

Quote:
Second, if you want to make sure there are no empty lines then you add items, you can
1) get all text from texteditor
2) trim$ it - this removes all non-printable characters (code <=32, space too) from begin and end of string. So empty lines from the end is gone too.
3) print it back
4) add your new item.

(+ code)
.

Nice demo, and thanks very much for trim$ which will be tried next to save further frustration
User IP Logged

stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #124 on: Oct 5th, 2016, 2:47pm »

Well it only needed one instance of trim$() in each section to cure the mystery redundant lines - excellent. https://www.filesanywhere.com/fs/v.aspx?v=8b71648f586376bc7369

Two things I would like more help with:

1.) Re. Saving/loading Team strings:

Once pasted into the texteditor from stored .rtf files by use of the buttons and made current in obteam$, team1$, team2$, team3$, and team4$, and upon switching between Stock and Young, the text now gets restored into the texteditor upon entry to each fresh screen (and it reappears in Young, after switching screens, according to the team selected).

I would like also to save those current strings and have them reloaded upon starting the program, as are the other data already, and tried the following code.

The first bit seems to do something and a data file gets saved, but I can't work out how to load that file because various versions of the second bit of code have so far just produced errors, what is the right code please?

'------------------
'save flying teams
open "FlyingTeams.dat" for output as #teamsave
print #teamsave, obteam$ + team1$ + team2$ + team3$ + team4$
close #teamsave
'------------------
'load flying teams
open "FlyingTeams.dat" for input as #teamload
line input #teamload, obteam$, team1$, team2$, team3$, team4$
close #teamload
'------------


2.) (PS. Solved) Re. The scheme for leading numbers:

- which are given to members of the flying teams as they are added, turn out just to be an annoyance.

Really they are only useful as a yardstick, to show how many birds remain in the team after editing it, (a minimum of 20 birds is required for competition) so they need to be replaced by static text in the form of a column of numbers, say 1 to 50, on both the Stock and on the Young screens.

Do I need to program each and every little one in the long list, twice, or it there a neater way to encode them please?

- 'only' needed 20 numbers for each texteditor after all, so have just listed the static text code as usual
« Last Edit: Oct 6th, 2016, 05:46am by stumpy » User IP Logged

tsh73
JB-Supporter


member is offline

Avatar




PM

Gender: Male
Posts: 3636
xx Re: getting started with Prog for Pigeon Breeding
« Reply #125 on: Oct 6th, 2016, 4:12pm »

About statictext as numbers
Nothing FOR loop cannot do ;)
Code:
'   Form created with the help of Freeform-J v.261006
'   Generated on Oct 06, 2016 at 23:51:07

    nomainwin

    WindowWidth = 248
    WindowHeight = 330

    UpperLeftX=int((DisplayWidth-WindowWidth)/2)
    UpperLeftY=int((DisplayHeight-WindowHeight)/2)

    N=13
    stTxt$=""
    for i = 1 to N
        stTxt$=stTxt$;i;chr$(13)
    next

    statictext #main.statictext1, stTxt$, 26, 16, 25, 235
    texteditor #main.texteditor2, 45, 16, 136, 240
    menu #main, "Edit"    '<--- Texteditor Menu can be moved but not removed.

    open "untitled" for window as #main
    print #main, "trapclose [quit.main]"

    print #main, "font ms_sans_serif 10"

    for i = 1 to N
        #main.texteditor2 "Item";i
    next

    wait

[quit.main]
    Close #main
    END
 


About writing/reading:
to split things you just need to add delimiters
Then WORD$ will do the job
Code:
obteam$ = "I have no idea"
obteam$ = obteam$ +chr$(13)+ "what will be saved there"
dim team$(4)
for team = 1 to 4
    team$=""
    for bird = 1 to 4
        team$=team$+"Team ";team; " bird ";bird;chr$(13)
    next
    team$(team)=team$
next

'use separators to delimit teams
open "FlyingTeams.dat" for output as #teamsave
print #teamsave, obteam$ 
print #teamsave, "obSeparator"
for team = 1 to 4
    print #teamsave, team$(team)
    print #teamsave, "teamSeparator"
next
close #teamsave

'------------------
'now read file at once
open "FlyingTeams.dat" for input as #teamload
wholeTeams$=input$(#teamload, lof(#teamload))
close #teamload
'then use separatos to split things with WORD$
obteam$ = word$(wholeTeams$, 1, "obSeparator")
print "obteam$"
print obteam$
'rest is second word
wholeTeams$ = word$(wholeTeams$, 2, "obSeparator")
'and it splits into 4 teams
for team = 1 to 4
    team$ = trim$(word$(wholeTeams$, team, "teamSeparator"))
    print "team";team
    print team$
next
 
« Last Edit: Oct 6th, 2016, 4:16pm by tsh73 » User IP Logged

Q: "And if I took your codes and compile them, and sell them for a profit"?
A: Go ahead. I had my share of good then I coded it for fun, if you can make better use of it - please do.
(enjoying JB 1.01 on WinXP, netbook and desktop)
stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #126 on: Oct 6th, 2016, 5:00pm »

Thank you for posting those sets of code. Will try to incorporate tomorrow.
« Last Edit: Mar 19th, 2017, 04:00am by stumpy » User IP Logged

stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #127 on: Oct 7th, 2016, 1:02pm »

Hello tsh73. I have looked at the code for reading/writing and am not sure if it quite fits the bill.

In the loop:-

Code:
for bird = 1 to 4
 team$=team$+"Team ";team; " bird ";bird;chr$(13)
next 


- the code seems to take an interest in individual birds, but Breeders Records naiively uses team1$, team2$, team3$, team4$, and obteam$ to carry the whole of each of those 5 teams to be convertible to text, which can be edited as whole in texteditor. Each can then be saved as .txt for printing, or for reading as a text file, without Breeders Records itself being needed.

After the items of text for individual birds in the team have been added by the program to a team$, the birds no longer need to exist as separate items and do not need to be handled individually, but only while editing the whole team$/text page with a PC file editing program, perhaps with cut and paste, when the team members get replaced or new details are added (as within JB's own texteditor).

What I would like to do is more simply to save the same five Team strings themselves to disc, just as 5 strings. Then, more simply, to load the same 5 strings back to Breeders Records for viewing or for editing as a whole in the texteditor, or for saving as text files (again employing the texteditor provided by JB). The 'birds' don't need to be addressed. Nor do I want to dim Team$(5) in case it wipes the strings - after all there are only 5 of them, as above. It would be nice for the program just to save them while closing and load them back when starting.

My own plagiarised bit of code has started to work for that purpose but I think 'line' was taking just the ".", which was just being used just as a spacer, for a line! and was then giving up. (without "." now, so it just gets the first line of the string instead of the 'whole page of text')

I have an inkling that this is happening and that use of 'EOF' might somehow avoid that, but can't comprehend the help and examples enough to get anything to work :-) yet....

« Last Edit: Oct 7th, 2016, 1:06pm by stumpy » User IP Logged

tsh73
JB-Supporter


member is offline

Avatar




PM

Gender: Male
Posts: 3636
xx Re: getting started with Prog for Pigeon Breeding
« Reply #128 on: Oct 7th, 2016, 2:10pm »

The code consists of 3 parts.
First part, up to "'use separators to delimit teams", makes "team$" teams. This is the only parts what mentions birds.
You (already) make then differently.

Second part write them to a file
I'm too lazy to repeat 4 exactly the same parts of code so I used array. But if you have teams buildt in team1$, team2$, team3$, team4$, you can write it as
Code:
'use separators to delimit teams
open "FlyingTeams.dat" for output as #teamsave
print #teamsave, obteam$ 
print #teamsave, "obSeparator"
print #teamsave, team1$
print #teamsave, "teamSeparator"
print #teamsave, team2$
print #teamsave, "teamSeparator"
print #teamsave, team3$
print #teamsave, "teamSeparator"
print #teamsave, team4$
close #teamsave
 


Same way, you can read it in individual variables as
Code:
'now read file at once
open "FlyingTeams.dat" for input as #teamload
wholeTeams$=input$(#teamload, lof(#teamload))
close #teamload
'then use separatos to split things with WORD$
    obteam$ = word$(wholeTeams$, 1, "obSeparator")
    print "obteam$"
    print obteam$
    print "---------"
'rest is second word
wholeTeams$ = word$(wholeTeams$, 2, "obSeparator")
'and it splits into 4 teams
    team1$ = trim$(word$(wholeTeams$, 1, "teamSeparator"))
    team2$ = trim$(word$(wholeTeams$, 2, "teamSeparator"))
    team3$ = trim$(word$(wholeTeams$, 3, "teamSeparator"))
    team4$ = trim$(word$(wholeTeams$, 4, "teamSeparator"))

    print team1$ 
    print "---------"
    print team2$ 
    print "---------"
    print team3$ 
    print "---------"
    print team4$
 

- it's just easier with array.
User IP Logged

Q: "And if I took your codes and compile them, and sell them for a profit"?
A: Go ahead. I had my share of good then I coded it for fun, if you can make better use of it - please do.
(enjoying JB 1.01 on WinXP, netbook and desktop)
stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #129 on: Oct 7th, 2016, 5:17pm »

Yes that works just fine, just what was needed!

Still one or two things to do, Its hard to draw the line and wrap it up
User IP Logged

stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #130 on: Oct 8th, 2016, 05:30am »

'Breeders Records' package for screens 1920x1080.
Hope it works for other roller breeders who might want to try it.
Many thanks yet again to JustBasic and everyone, especially to Rod and tsh73

edited 2.11.2016:
v2.49 annoying popup only on first run:-

https://www.filesanywhere.com/fs/v.aspx?v=8b71658d5f6472abaaac
« Last Edit: Nov 2nd, 2016, 05:35am by stumpy » User IP Logged

stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #131 on: Oct 26th, 2016, 4:54pm »

Hi tsh73. I had a request for the program but OP has 1366 x 768 screen. I would like to be able to offer the latest effort and have done some provisionally revised bmps, but would you kindly apply the appropriate scaling?
User IP Logged

tsh73
JB-Supporter


member is offline

Avatar




PM

Gender: Male
Posts: 3636
xx Re: getting started with Prog for Pigeon Breeding
« Reply #132 on: Oct 27th, 2016, 02:13am »

So you need autoscaled program, but fixed to 1366 x 768, so you can run it on your 19## x 1### and make sure bitmaps fit?

I'll try a bit later.
User IP Logged

Q: "And if I took your codes and compile them, and sell them for a profit"?
A: Go ahead. I had my share of good then I coded it for fun, if you can make better use of it - please do.
(enjoying JB 1.01 on WinXP, netbook and desktop)
stumpy
Full Member
ImageImageImageImage


member is offline

Avatar




PM


Posts: 148
xx Re: getting started with Prog for Pigeon Breeding
« Reply #133 on: Oct 27th, 2016, 04:28am »

Thank you and luckily my wife has a laptop with 1366 x 768 screen for testing.
User IP Logged

tsh73
JB-Supporter


member is offline

Avatar




PM

Gender: Male
Posts: 3636
xx Re: getting started with Prog for Pigeon Breeding
« Reply #134 on: Oct 27th, 2016, 4:51pm »

The link to converted program
https://yadi.sk/d/uXNheNirxiRvq

converter
(it doesn't like comment on end of line, like
Code:
textbox #hndl.txt, 0, 20, 1200, 25   ' --- GET new text --------------------------------------- ref 706 

- in a few occasions I removed it by hand (just broke line so comment went next line)
)
Code:
inFile$="Records_1920.bas"
outFile$="out_v2.46.bas"
FS$="," 'field delimiter
qq$=chr$(34)    '   (")

NR=0
open inFile$ for input as #1
open outFile$ for output as #2
while not(eof(#1))
    SCAN
    NR=NR+1
    line input #1, aLine$
    flag=1

    spc$=""
    i=0
    while mid$(aLine$,i,1)=" "
        i=i+1
        spc$=spc$+" "
    wend
    trimLine$=trim$(aLine$)

    if NR=16 then
        print #2, "    scale = WindowWidth/1920"
        print #2, "    fontscale = 1.3*scale"
        'flag = 0
    end if

    if instr(aLine$, "font Arial Narrow 10 italic") then
        'this line for italic
        print #2, word$(aLine$,1,FS$); FS$; qq$;"font Arial_Narrow 0 ";qq$;";int(27*fontscale);" ;qq$;" italic";qq$
        'this line for normal
        'print #2, word$(aLine$,1,FS$); FS$; qq$;"font Arial_Narrow 0 ";qq$;";int(27*fontscale)"
        'small font, for 1024
        'print #2, word$(aLine$,1,FS$); FS$; qq$;"font small 0 ";qq$;";int(24*fontscale);" ;qq$;" italic";qq$
        flag = 0
    end if

    if instr(aLine$, "font Arial_Narrow 12 italic bold") then
        print #2, word$(aLine$,1,FS$); FS$; qq$;"font Arial_Narrow 0 ";qq$;";int(20*fontscale);" ;qq$;" italic bold";qq$ 
        flag = 0
    end if

    if instr(aLine$, "!font calibri 12 italic bold") then
        print #2, word$(aLine$,1,FS$); FS$; qq$;"!font calibri 0 ";qq$;";int(24*fontscale);"; qq$;" italic bold"; qq$
        flag = 0
    end if

    if instr(aLine$, "font calibri_narrow 9 bold") then
        print #2, word$(aLine$,1,FS$); FS$; qq$;"font calibri_narrow 0 ";qq$;";int(15*fontscale);"; qq$;" bold"; qq$
        flag = 0
    end if

    if instr(aLine$, "font Franklin Gothic Medium Cond") then
        print #2, word$(aLine$,1,FS$); FS$; qq$;"font Franklin_Gothic_Medium_Cond 0 ";qq$;";int(20*fontscale);"; qq$;" bold"; qq$
        flag = 0
    end if


    if instr(aLine$, "WindowWidth = 1920") then
        print #2, spc$;"WindowWidth = DisplayWidth" 'depending on DisplayWidth
        'print #2, spc$;"WindowWidth = 1024"    'or you could chack smaller size
        flag = 0
    end if

    if instr(aLine$, "WindowHeight = 1080") then
        print #2, spc$;"WindowHeight = WindowWidth/1920*1080"
        print #2, spc$;"UpperLeftX = 1: UpperLeftY = 1 "
        flag = 0
    end if

    if instr(trimLine$,"button #main")=1 _
        or instr(trimLine$,"button #intro")=1 _
        or instr(trimLine$,"button #minor")=1 _
    then
        NF=countWords(aLine$, FS$)
        'print #2, NR, NF, aLine$
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if i >=NF-3 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(trimLine$,"bmpbutton #main.")=1 _
        or instr(trimLine$,"bmpbutton #minor")=1 then
        NF=countWords(aLine$, FS$)
        'print #2, NR, NF, aLine$
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if i >=NF-1 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(aLine$,"graphicbox #main.") _
        or instr(aLine$,"graphicbox #minor") then
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if i >=2 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(lower$(aLine$),"textbox #main.") _
        or instr(lower$(aLine$),"textbox #minor") then
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF-1
            i$=word$(aLine$, i, FS$)
            if i >=2 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        NF$=str$(val(word$(aLine$, NF, FS$)))
        if val(NF$) < 33 then NF$ = "33"
        NF$=NF$; "*scale"
        out$=out$+NF$
        print #2, out$
        flag = 0
    end if

    if instr(aLine$,"statictext #main.") _
        or instr(aLine$,"statictext #minor") then
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if i >=NF-3 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(aLine$,"listbox #main.") _
        or instr(aLine$,"listbox #minor") then
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if i >=NF-3 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(aLine$, "WindowWidth = 1502") then
        print #2, "WindowWidth = 1502*scale : WindowHeight = 90"
        flag = 0
    end if

    if instr(aLine$, "WindowWidth = 1490") then
        print #2, "WindowWidth = 1490*scale : WindowHeight = 100"
        flag = 0
    end if

    'WindowWidth = 460 : WindowHeight = 90
    if instr(aLine$, "WindowWidth =")<>0 and instr(aLine$, "WindowHeight =")<>0 then
        part1$=word$(aLine$,1,":")
        i$=word$(part1$,2,"=")
        part2$=mid$(aLine$,instr(aLine$, ":"))
        print #2, "WindowWidth = ";i$;"*scale ";part2$
        flag = 0
    end if


    if instr(aLine$,"textbox #hndl.") then
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF
            i$=word$(aLine$, i, FS$)
            if (i >=NF-3) and (i<>NF) then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        print #2, out$
        flag = 0
    end if

    if instr(aLine$,"button #hndl") then
'    print #2, NR, aLine$
        NF=countWords(aLine$, FS$)
        out$=""
        for i = 1 to NF-1
            i$=word$(aLine$, i, FS$)
            if i >=NF-1 then i$ = i$; "*scale"
            out$=out$+i$+left$(FS$,i<>NF)
        next
        NF$=word$(aLine$, NF, FS$)
        NF$=val(NF$); "*scale"
        out$=out$+NF$
        print #2, out$
        flag = 0
    end if

    'else
    'if flag then print #2, NR, aLine$
    if flag then print #2, aLine$
wend
close #1
close #2
print NR;" lines converted"
end

'-----------------------
function countWords(objStr$, delim$)
    token$ = "?"
    while token$ <> ""
        countWords = countWords + 1
        token$ = word$(objStr$, countWords, delim$)
    wend
    countWords = countWords - 1
end function
 


EDIT
and "Franklin Gothic Medium Cond" is wrong, JB understands only
"Franklin_Gothic_Medium_Cond" - you got ordinary Franklin
« Last Edit: Oct 27th, 2016, 4:54pm by tsh73 » User IP Logged

Q: "And if I took your codes and compile them, and sell them for a profit"?
A: Go ahead. I had my share of good then I coded it for fun, if you can make better use of it - please do.
(enjoying JB 1.01 on WinXP, netbook and desktop)
Pages: 1 ... 7 8 9 10 11  Notify Send Topic Print
« Previous Topic | Next Topic »

Conforums Terms of Service | Membership Rules | Home | Search | Recent Posts | Notification | Format Your Message | Installation FAQ

Donate $6.99 for 50,000 Ad-Free Pageviews!

| |

This forum powered for FREE by Conforums ©
Sign up for your own Free Message Board today!
Terms of Service | Privacy Policy | Conforums Support | Parental Controls