Seite 3 von 4

Re: PureBasic 5.50 Beta 1

Verfasst: 08.06.2016 13:22
von Nino
RSBasic hat geschrieben:Besser wäre es, wenn es ParseNumber() gäbe. Wie bei FormatDate() <=> ParseDate()
Dann ist es einheitlicher.
Wirklich einheitlich wäre es meiner Ansicht nach nur, wenn eine Funktion ParseNumber() auch die gleiche Form wie ParseDate() hätte, also

Code: Alles auswählen

Number.d = ParseNumber(Maske$, String$)
So wie Du es im engl. Forum vorgeschlagen hast

Code: Alles auswählen

Number.d = ParseNumber(Number$, DecimalPoint$, ThousandSeperator$)
haben die Parameter eine andere Bedeutung als bei ParseDate().
Daher sollte solch eine Funktion meiner Meinung nach besser z.B. UnformatNumber() heißen.

Die eleganteste Lösung hierfür wäre in meinen Augen, wenn ValF() und ValD() zwei zusätzliche optionale Parameter für diesen Zweck bekämen (und Val() einen).

Re: PureBasic 5.50 Beta 1

Verfasst: 08.06.2016 13:49
von NicTheQuick
Man kann auch einfach eine ParseNumber-Funktion schreiben, die versucht das Format zu erraten.
Sie kommt bei den Tausendertrennzeichen mit Komma, Punkt und Leerzeichen zurecht. Bei den Dezimalzeichen gehen nur Komma und Punkt.

Code: Alles auswählen

Procedure.d ParseNumber(input.s)
	Protected decPoint.c = 0, thousand.c = 0, left.s, right.s
	Protected *c.Character = @input
	While *c\c
		
		If *c\c = decPoint
			Debug "Zwei Deizimalpunkte sind nicht möglich."
			Break
		ElseIf *c\c = thousand
			;
		ElseIf *c\c = '.' Or *c\c = ','
			If Not thousand
				thousand = *c\c
			Else
				decPoint = *c\c
				right + "."
			EndIf
		ElseIf *c\c = ' ' And Not thousand
			thousand = *c\c
		Else
			If thousand
				right + Chr(*c\c)
			Else
				left + Chr(*c\c)
			EndIf
		EndIf
		
		*c + SizeOf(Character)
	Wend
	
	If Not decPoint
		ProcedureReturn ValD(left + "." + right)
	Else
		ProcedureReturn ValD(left + right)
	EndIf
EndProcedure

Debug ParseNumber("1 234,56")
Debug ParseNumber("1,234.56")
Debug ParseNumber("1.231.234,56")
Debug ParseNumber("1,23456")

Re: PureBasic 5.50 Beta 1

Verfasst: 15.06.2016 17:12
von Kurzer
Vielen Dank an das PB Team für die neue PureBasic-Version. :allright:

Ich habe mir die Beta 1 mit der englischen Hilfe heute installiert. Allerdings fällt mir in der Hilfedatei auf, dass die (alle?) Hilfe zu den neuen Funktionen nicht angezeigt wird.

Ich bekomme folgende Meldung angezeigt:

Bild

Hat das Problem noch jemand?

Re: PureBasic 5.50 Beta 1

Verfasst: 15.06.2016 17:15
von RSBasic
Die Dateieigenschaften der Hilfe-Datei öffnen und unten auf den Button "Zulassen" drücken:
Bild

Re: PureBasic 5.50 Beta 1

Verfasst: 15.06.2016 17:23
von Kurzer
Danke für den Tipp, RSBasic, aber den Button gibt es bei mir leider nicht.

Bild

Andere Hilfethemen in dieser Datei werden korrekt angezeigt.

Ich stelle aber fest, dass es den Eintrag "Entity" zweimal im tree "Inhalt" der PB Hilfe gibt. Einmal unter dem Eintrag Engine 3D und einmal unter VectorDrawing. Evtl. ist hier eh noch was falsch am Aufbau der Hilfe.

Re: PureBasic 5.50 Beta 1

Verfasst: 15.06.2016 18:07
von Shardik
Die englische Hilfe zu Vehicle ist noch nicht eingearbeitet, kann aber bereits hier online eingesehen werden.

Re: PureBasic 5.50 Beta 1

Verfasst: 15.06.2016 18:31
von Kurzer
Danke für die Info und den link, Shardik. :)

Re: PureBasic 5.50 Beta 2

Verfasst: 12.07.2016 09:38
von RSBasic
Fred hat geschrieben:Beta 2 is out ! It does includes a bunch of fixes and updated SQLite lib to 3.13.0.

Re: PureBasic 5.50 Beta 2

Verfasst: 13.07.2016 23:29
von Andre
RSBasic hat geschrieben:
Fred hat geschrieben:Beta 2 is out ! It does includes a bunch of fixes and updated SQLite lib to 3.13.0.
Ergänzen möchte ich noch, dass bereits diese Beta2 auch in der deutschen Sprachvariante die neueste Hilfedatei enthält. Bin dieses Mal also frühzeitig 1:1 up-to-date mit der englischen Hilfedatei inkl. der zuletzt gemeldeten Bugfixes/Ergänzungen :mrgreen:

Re: PureBasic 5.50 Beta 2

Verfasst: 13.07.2016 23:32
von RSBasic
Danke Andre :allright: