Español
Fuente/ Codesnippets

Edits Características Eingabefelder Verschiedenen

 

KompilierenMarcaSeparación
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> Taste
end
 
15.07.2007  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.714 Views

Untitledvor 0 min.
Walter09.05.2021
Member 820412718.04.2020
Jörg Sellmeyer12.06.2019
rquindt06.05.2018
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie