Autor | Thema: Fenster-Positionsvorgabe? | | Datum:16.12.01 16:39 
(Ul.Boett@t-online.de) | |
hallo liebe programmierfans,
es ist evt. eine dumme frage:
ich habe ein eingabe zu machen mit
z.b. let i%=@input$(...)
ich möchte,daß dieses sich nun öffnende fenster aus optischen gründen an einer ganz bestimmten position auf dem HAUPTFENSTER
erscheint,bloß wie geht das ???
über hilfe würde ich mich sehr freuen
mfg ulrich
|
| | Datum:16.12.01 17:21 
(joerse@gmx.de) | |
Hallo,
Du kannst Dir entweder einen eigenen Inputdialog stricken, indem
Du Dir ein entsprechendes Dialogfenster baust.
Oder Du manipulierst mit Hilfe des Tools Reshacker:
http://rpi.net.au/~ajohnson/resourcehacker/
die Runtime Deines Programms VOR dem Linken.
Viel Erfolg
Jörg
|
| | Datum:17.12.01 16:02 
(privat@web-treffpunkt.de) | |
Hallo Ulrich
Versuch es doch mal so:
PROC INPUT_BOX
DECLARE win01%,eing%,eing$,EE%,OK%,back%,txt$,txt%,font%
font%=CREATE("FONT","ARIAL",16,6,0,0,0)
PARAMETERS X%,Y%,lang%,hoch%,titel$,txt$
WindowStyle 48
win01%=CREATE("WINDOW",%HWnd,titel$,X%,Y%,lang%,hoch%)
txt%=CREATE("TEXT",win01%,txt$,20,15,SUB(lang%,50),20)
SetFont txt%,font%
eing%=CREATE("EDIT",win01%,eing$,20,DIV(hoch%,3),SUB(lang%,50),23)
SetFont eing%,font%
OK%=CREATE("BUTTON",win01%,"&OK",20,85,80,25)
SetFont OK%,font%
back%=CREATE("BUTTON",win01%,"&Abbruch",SUB(lang%,110),85,80,25)
SetFont back%,font%
SetFocus(eing%)
EE%=0
WhileNot EE%
If OR(ScanKey(65),GetFocus(back%))
DesTroyWindow(win01%)
EE%=1
EndIf
If OR(ScanKey(79),GetFocus(OK%))
eing$=GetText$(eing%)
DesTroyWindow(win01%)
EE%=1
locate 15,30
Print eing$ 'Das ist nur als Bestätigung hierhingestellt worden
EndIf
WEND
ENDPROC
'##########################################
CLS rgb(0,0,20)
INPUT_BOX 50,100,300,145," Input-Box","Bitte die gewünschte Eingabe machen..."
'Durch die Parameter kann die Input-Box an jeder Stelle des Bildschirmes erscheinen
Waitinput
End
|
| | Datum:17.12.01 19:25 
(joerse@gmx.de) | |
Hallo,
Dann lieber so:
While ...
...
EE%=1
locate 15,30
'Print eing$ 'Das ist nur als Bestätigung hierhingestellt worden
EndIf
WEND
return eing$ 'Dann brauchst Du in diesem Teil des Codes nix ändern und erhältst die Antwort als @$(0)
ENDPROC
CLS rgb(0,0,20)
INPUT_BOX 50,100,300,145," Input-Box","Bitte die gewünschte Eingabe machen..."
'Durch die Parameter kann die Input-Box an jeder Stelle des Bildschirmes erscheinen
print @$(0)
Waitinput
End
|
| | Datum:17.12.01 19:35 
(info@web-treffpunkt.de) | |
ist schon richtig, Jörg
aber ich weiss ja nicht was mit der Eingabe geschehen soll.
Das "print ..." wurde von mir nur hingestellt, um zu zeigen, dass die Eingabe auch vom Programm gelesen wird. Kann ja sein, das mit der Eingabe eine Rechnung aufgemacht wird und dann muss in eine neue Procedur verzweigt werden oder ??
mfG
hh
|
| | Datum:17.12.01 19:45 
| |
erstmal vielen dank für eure bemühungen.zur weiteren info:
es werden zwei eingabefenster benötigt:im ersten wird ein startwert,im zweiten ein zielwert eingegeben .mit inc x% wird dann von -bis gezählt und die jeweilige erhöhung als ein steuerbefehl an die serielle schnittstelle und weiter an eine digitale modellbahnsteuerung gesandt.schöner wäre natürlich,wenn in einem Fenster beide angaben gemacht werden könnten.geht aber auch so
mfg ulrich
|
| | Datum: 18.12.01 16:09 
(info@web-treffpunkt.de) | |
Hallo Ulrich
Bei zwei Eingaben in einem Fenster das Fenster vergrössern, noch eine Eingabe declarieren und dazusetzen. Mein Quelltext
ist nur ein Vorschlag und nicht starr. Das ist der Vorteil von Profan² - Alle Dialoge sind variabel herzustellen. Ich habe z.B. in einem Programm auf einem Fenster 30 Eingaben stehen und es funktioniert bestens
mfG
hh
|
|
|