Italia
Fonte/ Codesnippets

Auswahlbox Choicebox Combobox Inhal Unsortiertem

 

KompilierenMarkierenSeparieren
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Auswahlbox (ChoiceBox, ComboBox) mit unsortiertem Inhalt
Programm-AuswBox2
Hier wird zum Erstellen derAuswahlbox die @Control Funktion benutzt.
damit ist es möglich den Inhalt so wie geladen (=unsortiert) oder sortiert anzuzeigen.
Version 1.1  11.12.2002.     Das Programm kann frei benutzt werden, für
Schäden kann keine Haftung übernommen werden.
Autor: Gerhard Putschalka
homepage: http://members.telering.at/g.putschalka/index.html
email: g.putschalka@web.de
Declare CBox&,Ende%,Dlg%
SetTrueColor 1
Cls @RGB(255,255,255)
Let Dlg% = @CreateDialog(%Hwnd,AuswahlBox (ChoiceBox),250,100,250,300)
Let Ende%=@createbutton(Dlg%,Ende,100,240,80,32)
Auswahlbox erstellen (unsortierte Form)
Let CBox& = @Control(ComboBox,,$50E00003,10,10,200,200,Dlg%,1000,%hinstance)
um die sortierte Form zu bestimmen muß Parameter 3 $50E00103 sein.
sollte die Auswahlbox im Programm mehrmals benutzt werden, so kann der Inhalt mit
@Sendmessage(CBox&,$14B,0,0)
gelöscht werden
befüllen der Box
... entweder es wird die ListBoxListe befüllt (hier als Beispiel mit den Schriftarten)
und dann übertragen der ListBoxListe in die Auswahlbox
AddFonts
MoveListToChoice(CBox&)
... oder Einträge direkt hinzufügen (wird hier absichtlich ungeordnet hinzugefügt)
AddChoice(CBox&,0-Ausgabe-1)
AddChoice(CBox&,Ausgabe-4)
AddChoice(CBox&,Ausgabe-3)
AddChoice(CBox&,Ausgabe-2)
beide Varianten können auch kombiniert werden.
soll bereits ein bestimmter Eintrag vorselektiert werden:
Parameter 3. ist die Zeilenummer (0 = 1. Zeile)
@Sendmessage(CBox&,$14E,3,0)            Zeile 4 ist die Zeilenummer
auswerten. Wird eine Zeile markiert wird WaitInput durchbrochen.
auf den Text der ausgewählten Zeile wird mit @GetText$(CBox&) zugegriffen

WhileNot @GetFocus(Ende%)

    WaitKey
    Print @GetText$(CBox&)  kann auch hier ausgewertet werden

EndWhile

Print @GetText$(CBox&)
Print zum Beenden Ende-Button drücken
WaitKey
End
Anmerkung:
die Einträge der ChoiceBox können auch zeilenweise ausgelesen werden.
zum Test dieses Abschnittes obiges End entfernen (als Kommentar kennzeichnen)
Um den markierten Eintrag zu lesen kann statt @GetText$(CBox&) auch folgende
Variante benutzt werden. Hier muß eine Bereichsvariable verwendet werden.
Declare Cur&, Max&, Ber#, Text$
Dim Ber#,100  = mind. Länge + 1 des längsten Eintrags in der Choicebox
welche Zeile wurde markiert?
Let Cur& = @Sendmessage(CBox&,$147,0,0)  Cur& erhält die ausgewählte Zeilennummer
der Text der Zeile wird in Ber# übertragen.
@Sendmessage(CBox&,$148,Cur&,Ber#)
natürlich kann in Cur& ein beliebiger Wert (von Null beginnend) stehen
jetzt kann der Text in eine Stringvariable übernommen werden
Let Text$ = @String$(Ber#,0)
um wahlweise irgendwelche Zeilen (also auch nicht-markierte) auslesen zu können ist
es wichtig zu wissen wieviele Einträge in der Choicebox vorhanden sind.
wieviele Einträge gibt es? (ist immer die Anzahl der Zeilen - 1)
Let Max& = @Sendmessage(CBox&,$146,0,0)  Max& erhält die Anzahl Einträge
Dispose Ber#   nicht vergessen, eine Bereichsvariable muß immer freigegeben werden!
Print
Print Text$
Print zum Beenden Ende-Button drücken
WaitInput
a class=s4 href='./../../funktionsreferenzen/xprofan/end/'>end
 
16.07.2007  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

2.593 Views

Untitledvor 0 min.
H.Brill17.05.2023
rquindt15.04.2018
Peter Max Müller23.10.2017
Ernst01.07.2016
Di più...

Themeninformationen

Dieses Thema hat 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie