Français
Source/ Codesnippets

Edits Eigenschaften Eingabefelder Verschiedenen

 

KompilierenMarqueSéparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Eingabefelder (Edits) mit verschiedenen Eigenschaften (ab Profan² 5.0)
Lauffähig ab Profan-Version 5.0
Edits1   Beispiele von Eingabefeldern (Edits) mit verschiedenen Eigenschaften.
Version 1.0  3.2.2002.        Das Programm kann frei benutzt werden, für
Schäden kann keine Haftung übernommen werden.
Autor: Gerhard Putschalka
email: g.putschalka@web.de
homepage: http://members.telering.at/g.putschalka/index.html
Die Felder werden im 3D Stil mit dem API-Aufruf CreateWindowEx erzeugt und sollten
daher auch mit Profanversionen ab 5.0-32 einsetzbar sein (es gibt zwar in 4.5
bereits die Funktion @DEF, aber hier sind nur max. 8 Parameter möglich. Das API
CreateWindowEx benötigt jedoch 12 Parameter).
@CreateWindowEx($0000280,Klasse#,Text#,$54810080,X1,Y1,X2,Y2,N,0,%hinstance,$0200)
die Werte für  N, X1, Y1, X2, Y2 entsprechen den Angaben wie bei @CreateEdit
Der 4. Parameter bestimmt die Feldeigenschaften:
 $5481xxxx
........0 = linksbündige Eingabe
........1 = mittige Eingabe
........2 = rechtsbündige Eingabe
........4 = mehrzeilige Eingabe (MultiEdit ?)
........8 = nur Großbuchstaben (Kleinbuchstaben werden umgesetzt)
.......1. = nur Kleinbuchstaben (Großbuchstaben werden umgesetzt)
.......2. = Password (es werden nur * angezeigt)
.......4. = vertikal Scroll
.......8. = horizontal Scroll. Ist das Feld zu kurz, wird die Anzeige weitergeschoben.
......1.. = Nohideselect ?
......4.. = OEM Convert (der eingegebene String wird in ANSI konvertiert)
......8.. = Read only. Das Feld wird grau angezeigt, erlaubt aber keine Eingabe.
.....2... = nur Zifferneingabe möglich (aber kein Komma, Punkt oder Minus)
diese Werte können auch addiert werden. Sind aber als Hexwerte anzusehen. So ergibt z.B.
8 und 4 zwar den Wert 12 muß aber als Hexwert C eingesetzt werden
(die Zählweise in Hex ist: 0123456789ABCDEF ! Zählt also von 0 bis 15)
Definition der Funktion (link zum API)
Def @CreateWindowEx(12) ! USER32,CreateWindowExA
Declare Links&,LinksG&,LinksB&,LinksP&,LinksA&,LinksD&,Mitte&,Rechts&,OK%,_dlg%,ChkB%
Declare Klasse#,Text#
Windowtitle Eingaben:
Window 0,0-640,450
CLS
Let _dlg% = @CreateDialog(%Hwnd,Eingabefelder mit verschiedenen Eigenschaften,
170,20,470,430)
Dim Klasse#,10
Dim Text#,50
String Klasse#,0 = EDIT  muß EDIT lauten
String Text#,0   =       ist Vorgabetext für das Eingabefeld (hier leer - kein Wert)
1. linksbündige Eingabe
@CreateText(_dlg%,F1,10,40,20,20)
@CreateText(_dlg%,linksbündig,50,40,80,20)
Let Links& = @CreateWindowEx($0000280,Klasse#,Text#,$54810080,140,40,100,20,_dlg%,0,
%hinstance,$0200)
2. mittige Ausrichtung
@CreateText(_dlg%,F2,10,80,20,20)
@CreateText(_dlg%,mittig,90,80,40,20)
hier wird ein Vorgabewert mit der Erstellung des Feldes mitgegeben
String Text#,0   = 987  Vorgabetext
Let Mitte& = @CreateWindowEx($0000280,Klasse#,Text#,$54810081,140,80,100,20,_dlg%,0,
%hinstance,$0200)
String Text#,0   =   Vorgabewert wieder entfernen
3. rechtsbündige Ausrichtung
@CreateText(_dlg%,F3,10,120,20,20)
@CreateText(_dlg%,rechtsbündig,40,120,90,20)
Let Rechts& = @CreateWindowEx($0000280,Klasse#,Text#,$54810082,140,120,100,20,_dlg%,0,
%hinstance,$0200)
setze einen Vorgabewert unabhängig von der Erstellung des Feldes.
SetText Rechts&,F012
4. linksbündige Eingabe, Umsetzung Kleinbuchstaben in Großbuchstaben
@CreateText(_dlg%,F4,10,160,20,20)
@CreateText(_dlg%,linksbündig,50,160,80,20)
@CreateText(_dlg%,Umsetzung in Großbuchstaben,250,160,200,20)
Let LinksG& = @CreateWindowEx($0000280,Klasse#,Text#,$54810088,140,160,100,20,_dlg%,0,
%hinstance,$0200)
5. linksbündige Eingabe, Feldeingabe durch Breite begrenzt. Ist nicht brauchbar, weil
die Zeichenbreite die Begrenzung ergibt! Es können z.B. viel mehr i als M
eingegeben werden.
@CreateText(_dlg%,F5,10,200,20,20)
@CreateText(_dlg%,linksbündig,50,200,80,20)
@CreateText(_dlg%,begrenzte Eingabebreite !,250,200,200,20)
Let LinksB& = @CreateWindowEx($0000280,Klasse#,Text#,$54810000,140,200,100,20,_dlg%,0,
%hinstance,$0200)
6. linksbündige Eingabe, Feldeingabe durch max. Stellenanzahl begrenzt. Ist besser!
Hier spielt die Zeichenbreite keine Rolle.
@CreateText(_dlg%,F6,10,240,20,20)
@CreateText(_dlg%,linksbündig,50,240,80,20)
@CreateText(_dlg%,Eingabe auf 5 Stellen begrenzt,250,240,200,20)
Let LinksA& = @CreateWindowEx($0000280,Klasse#,Text#,$54810080,140,240,100,20,_dlg%,0,
%hinstance,$0200)
@SendMessage(LinksA&,$00C5,5,0)  Parameter 3 ist Anzahl max. Stellen (hier 5)
7. linksbündige Eingabe, Password.
@CreateText(_dlg%,F7,10,280,20,20)
@CreateText(_dlg%,linksbündig,50,280,80,20)
@CreateText(_dlg%,Password,250,280,200,20)
Let LinksP& = @CreateWindowEx($0000280,Klasse#,Text#,$54810020,140,280,100,20,_dlg%,0,
%hinstance,$0200)
8. linksbündige Eingabe, geschütztes Feld.
Grundsätzlich muß das Feld nicht direkt als geschützt erstellt werden. Jedes andere
Eingabefeld könnte ebenso durch @SendMessage(Handle&,$00CF,x,0) gesteuert werden
(x: 0 = ungeschützt, 1 = geschützt)
@CreateText(_dlg%,F8,10,320,20,20)
@CreateText(_dlg%,linksbündig,50,320,80,20)
@CreateText(_dlg%,geschützt,250,320,200,20)
Let LinksD& = @CreateWindowEx($0000280,Klasse#,Text#,$54810880,140,320,100,20,_dlg%,0,
%hinstance,$0200)
setze einen Text, damit was angezeigt wird
SetText LinksD&,ABCDEF012
mit der Checkbox kann der Schutz aus- und eingeschaltet werden.
Let ChkB% = @CreateCheckBox(_dlg%,Feld schützen?,140,350,120,20)
setze Checkbox am Beginn auf geschützt
SetCheck ChkB%,1
Anmerkung: das Zuweisen von Texten und das aus- und einschalten des Schutzes ist bei
allen hier verwendeten Feldern anwendbar.
Let OK% = @CreateButton(_dlg%,Ende,380,370,50,25)
@SetFocus(Links&)
freigeben der Bereiche, sie werden nicht mehr gebraucht.
Dispose Klasse#
Dispose Text#

WhileNot @GetFocus(OK%)

    WaitInput
    Hier wird der Schutz des geschützten Feldes ein- oder ausgeschaltet.
    im Parameter 3 wird 0 oder 1 (Zustand der Checkbox) übergeben.
    @SendMessage(LinksD&,$00CF,@GetCheck(ChkB%),0)

    If (@GetCheck(ChkB%) = 1)

        @CreateText(_dlg%,geschützt,250,320,200,20)

    Else

        @CreateText(_dlg%,nicht geschützt,250,320,200,20)

    EndIf

EndWhile

Ergebisanzeige.
Alle Feldinhalte werden, ohne Berücksichtigung der Ausrichtung in den angezeigten
Feldern, linksbündig übergeben!
Print F1 =,@GetText$(Links&)
Print F2 =,@GetText$(Mitte&)
Print F3 =,@GetText$(Rechts&)
Print F4 =,@GetText$(LinksG&)
Print F5 =,@GetText$(LinksB&)
Print F6 =,@GetText$(LinksA&)
Print F7 =,@GetText$(LinksP&)
Print F8 =,@GetText$(LinksD&)
WaitInput  warte a> bouton
end
 
15.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

1.692 Views

Untitledvor 0 min.
Walter09.05.2021
Member 820412718.04.2020
Jörg Sellmeyer12.06.2019
rquindt06.05.2018
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie