Seite 3 von 3

Verfasst: 05.06.2007 15:20
von RSBasic
@Kaeru Gaman
>die CheckBox ist ein Button mit anderen eigenschaften.
>im grunde ist Button eine UnterKlasse der Gadgets,
>wo einige dazugehören, die wir eben als eigenständige gadgets kennen...
Was hälst du davon, wenn ich ne Sourcedatei erstelle, wo alle Werte sind (für jedes Gadgets natürlich) und deren Beschreibungen.
Und diese Sourcedatei kann man includen und für seine Projekte benutzen.
Ich hätte Bock drauf, nur ist die Frage, ob das umsonst wär?

Verfasst: 05.06.2007 15:21
von edel
Nen Blick in die SDK haette voellig gereicht.

SS_CENTERIMAGE hat geschrieben: Specifies that a bitmap is centered in the static control that contains it. The control is not resized, so that a bitmap too large for the control will be clipped. If the static control contains a single line of text, the text is centered vertically in the client area of the control.

Verfasst: 05.06.2007 16:05
von D@nte
>Wie hast du das ermittelt?
War das jetzt ernsthaft die Frage danach wie man HEX in BIN Zahlen wandelt?!

Kann ich mir zwar nit vorstellen aber trotzdem...

Code: Alles auswählen

Zahl.s = "340" ;hier die HEX ZAhl als String

Debug "Hex: h" + Zahl

For i = 1 To Len(Zahl)
  Erg1 = Erg1 + Val(Mid(Zahl,i,1))*Pow(16,Len(Zahl)-i)
Next i

Debug "Dec: d" + Str(Erg1)

Repeat
  Erg.s = Str(Erg1 % 2) + Erg
  Erg1 = Erg1 / 2
Until Erg1 = 0

Debug "Bin: b" + Erg
und

Code: Alles auswählen

1024 |  512 |  256 |  128 |   64 |   32 |   16 |    8 |    4 |    2 |    0
2^10 |  2^9 |  2^8 |  2^7 |  2^6 |  2^5 |  2^4 |  2^3 |  2^2 |  2^1 |  2^0
   0 |    1 |    1 |    0 |    1 |    0 |    0 |    0 |    0 |    0 |    0
Allerdings warum ist die Zentrierung nicht schon beim Flag $200 aufgetreten sondern anscheinend ers bei $340?!
Hab's nit getestet nur aus den vorhergehenden Posts geschlossen

Verfasst: 05.06.2007 18:07
von Fluid Byte
Es reicht das #SS_CENTERIMAGE flag alleine aber es funktioniert halt nur mit einer einzigen Zeile. Ist der Text länger als das Gadget breit wird der Text abgeschnitten. Zeilenumbrüche werden ebenfalls ignoriert.

Code: Alles auswählen

OpenWindow(0,0,0,320,240,"",#PB_Window_SystemMenu | 1)
CreateGadgetList(WindowID(0))
TextGadget(1,10,10,200,200,"Lorem ipsum dolor sit amet, " + #CRLF$ + "consetetur sadipscing elitr.",#SS_CENTERIMAGE | #WS_BORDER)

While WaitWindowEvent() ! #PB_Event_CloseWindow : Wend

Verfasst: 05.06.2007 22:09
von Jake
Nett das ihr euch so viel Arbeit gemacht habt, aber das Flag #SS_CENTERIMAGE hatte ich im PSDK auch schon gefunden.

Ich möchte in einem TextGadget den Text ändern und der soll dann halt nicht am oberen Rand kleben, das sieht nicht schön aus. Die Länge des Textes kannn also varriieren und ist evt. länger als das Gadget breit ist.

Scheint also keine einfache Lösung dafür zu geben.

Verfasst: 06.06.2007 09:12
von AND51
Doch, es gibt eine einfache und plattfprmübergreifende Lösung (funzt also auf Win wie auf Linux):
Einfach mit StartDRawing() und den Befehlen TextHeight() und TextWidth() die Breite und Höhe des Textes ermitteln. Diese Befehle berücksichtigen die gerade eingestellte Schriftart.
Wenn du diese Daten hast, kannst du den Text im TextGadget() einfacher positionieren.