Foro | | | | Detlef Tussing | hallo allen Profaner`n
tener ya otra vez una Cuestión, en el zusammenkopieren de verschiedenen Programmen mach Yo ahora 2 Ventana en. Yo hätte aber gerne el ListBox en el Ventana 1, y kein weiters Ventana. KompilierenMarcaSeparación1. Fenster
DEF GETSYSCOLOR(1) !USER32,GetSysColor
WINDOWSTYLE 31 47
WINDOWTITLE Test
WINDOW SUB(DIV(%MAXX,2),DIV(740,2)),SUB(DIV(%MAXY,2),DIV(500,2))-660,500
SETTRUECOLOR 1
CLS GETSYSCOLOR(1)15
SETDIALOGFONT 1
2.Fenster im 1. Fenster
dlg% = create(Dialog,%Hwnd,Test2,340,200,250,100)
CBox& = @Control(ComboBox,,$5421034E,10,10,200,200,Dlg%,2000,%hinstance)
End%=@createbutton(Dlg%,Auswahl,80,40,80,32)
Addfiles *.DAT
MoveListToChoice(CBox&
y como Yo auch neugierig bin, wüste Yo gern qué el $5421034E en el 2. Ventana bedeutet. Yo habe el komplette Programa en una otro Rechner kopiert, como son el Ventana a uno andern Punto como en me, hängt el con el Einstellung el Grafikkarte zusammen? |
| | | | |
| | Jac de Lad | Um el Listbox en el erste Ventana a quetschen müsstest du como übergeordnetes Handle %hWnd angeben (oder eben el Ventana wo ellos hin se).
$5421034E es el Stil. Der setzt se de verschiedenen Werten (Attributen) zusammen, näheres dazu en el Ayuda bajo Control(). |
| | | Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 09.05.2007 ▲ |
| |
| | Rolf Koch | Hi Detlef,
bevor wir helfen puede, bitten wir siempre una kompletten lauffähigen Code para enviar. Cuestión 1: ¿Por qué nimmst Usted siempre Getsyscolor(1)? Como es sí alles schwarz (en me es Windownormal eingestellt) je después de Einstellung des Users. Cuestión 2: Welche Listbox? In Deinem Code sehe Yo no Listbox. Oder media Usted el Combobox - bajo Profano como Choicebox bekannt. Wenn el el erste Ventana se, entonces tausche doch simplemente Dlg% gegen %hwnd de. Das $xxxxxxx Es el Stilbeschreibung des Controls qué erstellt se. Cuestión 3: Was media Usted con otro Punto? El Koordinaten des Hauptfensters sowie des Dialoges son eingentlich festgelegt con Su Angaben. Das Ventana principal sehe Yo, se sin embargo Bildschirmmittig ausgerichtet. Also debería auch la ventana principal en beiden Rechnern mittig dargestellt voluntad.
Apéndice: Das mittige es no mittig tener Yo grad gesehen, porque lo voluntad fixe Werte genommen. Und esta son en verschiedenen Auflösungen %maxx y %maxy sólo verschieden. |
| | | | |
| | Detlef Tussing | Como ya he dicho, habe de vielen Prog`s eins gemacht. Desde que todavía bastante unerfahren bin, weis Todavía no sobre cada Befehl bescheid. Darum puede manche Befehle unsinnig oder wiedersprüchlich ser. Doch el prog se ejecuta. |
| | | | |
| | Detlef Tussing | Dank eurer Ayuda tener Yo el con el 2 Fenstern geschafft,glaube auch el el problema con el 2. Rechner gelöst es. Como nehm Yo MAXX y MAXY otra vez fuera ? Brauch Yo GETSYSCOLOR überhaubt en una blauen Hintergrund a haben? ¿Cómo se puede Yo en Passwortabfrage con ENTER anstelle el Button Ok anklicken más kommen? KompilierenMarcaSeparación $P+
$H Windows.ph
Declare box1&, box2&,box3&,box4&,box5&,box6&,text1&,text2&,text3&,text4&,text5&,text6&,datname$,lesen%,name$
Declare relais1$,Relais2$,karte1%,n1%,n2%,Speicher%,ende%,schluss%,datum1$,zeit$
declare von$,bis$,text7&,text0&,Wähle$,cbox&,dlg%,end%,von%,bis%,text01&,n3$,x1%,x2%,xy%
declare exit&,e%,a$
declare edit&,vorgabe$
DEF GETSYSCOLOR(1) !USER32,GetSysColor
WINDOWSTYLE 31 47
WINDOWTITLE Apex Elektronik GmbH Grevenbroich Tel. 02181-24040
WINDOW SUB(DIV(%MAXX,2),DIV(740,2)),SUB(DIV(%MAXY,2),DIV(500,2))-400,150
SETTRUECOLOR 1
CLS GETSYSCOLOR(1)15
SETDIALOGFONT 1
exit& = CreateButton(%HWnd,Ok,150,50,100,35)
vorgabe$ =
edit& = CONTROL(Edit,vorgabe$,$54810020,150,20,100,25,%HWnd,0,%HInstance,$0200)
SetFocus(edit&)
whilenot e%
WaitInput
if GetFocus(exit&)
e% = 1
endif
wend
A$ = gettext$(edit&)
if a$=qwert
destroywindow(edit&)
destroywindow(exit&)
boxaufbau
else
end
endif
boxaufbau
proc lesen
if fileexists(name$) =0
speichern
return
endif
Assign #1,name$
reset #1
input #1,datum1$
input #1,zeit$
input #1,relais1$
input #1,karte1%
input #1,n2% 0=licht aus
input #1,von%
input #1,bis%
close #1
if n2% = 1
n3$=ein
else
N3$=aus
endif
n1%=relais1$
von$=von%
bis$=bis%
x1%=von%-15 wichtig für die Anzeige in der Choicebox siehe Zeile 36 & 37
x2%=bis%-5
@sendmessage(Box1&,$14E,n1%,0,0 ) 0,0 = erster eintrag, 1,0 = zweiter eintrag usw.
@sendmessage(Box2&,$14E,n2%,1,0)
@sendmessage(Box3&,$14E,x1%,0,0)
@sendmessage(Box4&,$14E,x2%,0,0)
settext text5&,Add$(Fahrzeug: ,name$)
settext text3&,add$(von: ,von$)
settext text1&,add$(Tor: ,relais1$)
settext text2&,add$(Licht : ,n3$)
settext text4&,add$(bis: ,bis$)
If n2%=1
showwindow(text3&,1)
showwindow(box3&,1)
showwindow(text4&,1)
showwindow(box4&,1)
showwindow(text6&,1)
showwindow(text7&,1)
showwindow(speicher%,1)
showwindow(schluss%,1)
elseif n2%=0
showwindow(text3&,0)
showwindow(box3&,0)
showwindow(text4&,0)
showwindow(box4&,0)
showwindow(text6&,0)
showwindow(text7&,0)
showwindow(speicher%,1)
showwindow(schluss%,1)
endif
SETFOCUS(%HWND)
endproc
proc Boxaufbau
DEF GETSYSCOLOR(1) !USER32,GetSysColor
WINDOWSTYLE 31 47
WINDOWTITLE Apex Elektronik GmbH Grevenbroich Tel. 02181-24040
WINDOW SUB(DIV(%MAXX,2),DIV(700,2)),SUB(DIV(%MAXY,2),DIV(500,2))-700,400
SETTRUECOLOR 1
CLS GETSYSCOLOR(1)15
SETDIALOGFONT 1
CBox& = @Control(ComboBox,,$5421034E,270,70,100,200,%Hwnd,2000,%hinstance)
End%=@createbutton(%Hwnd,Auswahl,280,116,80,20)
Addfiles *.DAT
MoveListToChoice(CBox&)
@Sendmessage(CBox&,$14E,0,0)
name$=@gettext$(cbox&)
text0&=createtext(%Hwnd,Feuerwehr Grevenbroich,240,30,170,20)
text1&=Createtext(%Hwnd,Tor:,200,253,50,20)
showwindow(text1&,0)
text2&=Createtext(%Hwnd,Licht:,360,253,70,20)
showwindow(text2&,0)
text5&=Createtext(%Hwnd,Fahrzeug,35,253,153,20)
showwindow(text5&,0)
text3&=Createtext(%Hwnd,von:,200,330,70,20)
showwindow(text3&,0)
text4&=Createtext(%Hwnd,bis: ,360,330,50,20)
showwindow(text4&,0)
text6&=createtext(%Hwnd,Hallenbeleuchtung,35,330,130,20)
showwindow(text6&,0)
text7&=createtext(%Hwnd,einschalten,520,330,80,20)
showwindow(text7&,0)
box1&=Create(choicebox,%Hwnd,0,280,250,50,500)
showwindow(box1&,0)
box2&=Create(choicebox,%Hwnd,0,450,250,50,500)
showwindow(box2&,0)
box3&=Create(choicebox,%Hwnd,0,280,327,50,500)
showwindow(box3&,0)
box4&=Create(choicebox,%Hwnd,0,450,327,50,500)
showwindow(box4&,0)
Speicher%=@Create(DefButton,%Hwnd,Speichern und weiter,115,400,155,40)
showwindow(speicher%,0)
schluss%=@Create(DefButton,%Hwnd,Speichern und Ende,345,400,155,40)
showwindow(schluss%,0)
AddChoice(box1&,0)
AddChoice(box1&,1) Tor
AddChoice(box1&,2)
AddChoice(box1&,3)
AddChoice(box1&,4)
AddChoice(box1&,5)
AddChoice(box1&,6)
AddChoice(box1&,7)
AddChoice(box1&,8)
AddChoice(box1&,9)
AddChoice(box1&,10)
AddChoice(box2&,aus)Licht aus
AddChoice(box2&,ein)Licht ein
AddChoice(box3&,15) von
AddChoice(box3&,16)
AddChoice(box3&,17)
AddChoice(box3&,18)
AddChoice(box3&,19)
AddChoice(box4&,5)
AddChoice(box4&,6) bis
AddChoice(box4&,7)
AddChoice(box4&,8)
AddChoice(box4&,9)
@sendmessage(Box1&,$14E,n1%,0,0 ) 0,0 = erster eintrag, 1,0 = zweiter eintrag usw.
@sendmessage(Box2&,$14E,n2%,0,0)
@sendmessage(Box3&,$14E,von$,0,0)
@sendmessage(Box4&,$14E,bis%,0,0)
SETFOCUS(%HWND)
WHILENOT ENDE%
if %key = 255
elseif getfocus(box1&)Relais1 Tor
relais1$=gettext$(box1&)
settext text1&,add$(Tor: ,relais1$)
elseif GETFOCUS(box2&)Relais2 Licht
relais2$=gettext$(box2&)
settext text2&,add$(Licht : ,gettext$(box2&))
If relais2$=ein
showwindow(text3&,1)
showwindow(box3&,1)
showwindow(text4&,1)
showwindow(box4&,1)
showwindow(text6&,1)
showwindow(text7&,1)
elseif GETFOCUS(box2&)Relais2
showwindow(text3&,0)
showwindow(box3&,0)
showwindow(text4&,0)
showwindow(box4&,0)
showwindow(text6&,0)
showwindow(text7&,0)
endif
elseif GETFOCUS(box3&)Zeit1
von$=gettext$(box3&)
settext text3&,add$(von: ,gettext$(box3&))
elseif getfocus(box4&)Zeit2
bis$=gettext$(box4&)
settext text4&,add$(bis: ,gettext$(box4&))
elseif getfocus(end%)Fahrzeug
name$=@gettext$(cbox&)
lesen
showwindow(box1&,1)
showwindow(text1&,1)
showwindow(box2&,1)
showwindow(text2&,1)
showwindow(text5&,1)
elseif getfocus(speicher%)Speichern und weiter
speichern
elseif getfocus(schluss%)Speichern und Ende
speichern
ende%=1
ENDIF
EndWhile
endproc
close #1
end
Proc Speichern
if relais2$=ein
n2%=1
elseif relais2$=aus
n2%=0
endif
if relais1$<=7
karte1%=1
else
karte1%=2
endif
if relais1$ =
relais1$=0
endif
von%=von$
bis%=bis$
Assign #1,name$
rewrite #1
Print #1,date$(3)
print #1,time$(0)
print #1,relais1$
print #1,karte1%
print #1,n2%
print #/span>,de%
imprimir #1,a%
close #1
ENDPROC
|
| | | | |
| | Dieter Zornow | Usted puede auch el Ventana en cada Farbe wählen indem du z. B. CLS RGB(255,0,0) schreibst así kannst du jede Farbnuance einstellen. Wenn Si es usted el Ventana zentrieren willst es maxX y maxY ya correcto du hast en deiner Formel WINDOW SUB(DIV(%MAXX,2),DIV(740,2)),SUB(DIV(%MAXY,2),DIV(500,2))-660,500 una Fehler muss heißen WINDOW SUB(DIV(%MAXX,2),DIV(740,2)),SUB(DIV(%MAXY,2),DIV(500,2))-740,500 valor 740 el du vorne dividierst muss natürlich auch entonces hinten en el Größe angeben sonst kommt el Ventana no en el Mitte, absolute Positionen gibst du simplemente z.B con WINDOW 10,10 - 740,500 a
Viele Grüße de Bangkok
Dieter |
| | | Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 09.05.2007 ▲ |
| |
| | | @¡Hola Detlef KompilierenMarcaSeparación Ventana kann con zwei Massangaben siempre zentriert adecuado voluntad. Mit USEBRUSH y RECTANGLE kannst Usted jede Farbe para el Hintergrund einstellen. GETSYSCOLOR es en 21 (glaube Yo) Systemfarben festgelegt |
| | | | |
| | Frank Abbing | Hehe, CLS es el Horst wohl gerade entfallen... |
| | | | |
| | | @Franco Wofür CLS ? - Das Ventana es con WINDOW x,y-x2,y1 erstellt
CLS erstellt siempre una Ventana oben links con el Grösse 640X480 - Diese Grösse Yo en mi Code sólo como Ejemplo angegeben. Beide Werte puede después de Gutdünken geändert voluntad. Yo erstelle incluso mi Dialogfenster con diesem Code. Nur muss hier en KompilierenMarcaSeparación anstelle des Bindestriches natürlich una Komma posición. Gelle |
| | | | |
| | Detlef Tussing |
Gracias, habt me muy geholfen.
schaut Por favor, una vez más en mi letzten Anfrage rein ,habe ellos Editiert währen Ihr ya el Respuesta gegeben habt |
| | | | |
| | | @Detlef
Posesiones Su Texto laufen dejar. In el Anlage siehst Usted el Erfolg. Mit Clic en OK bendet se el Programa |
| | | | |
| | Detlef Tussing | no sólo klick en el Button pero auch con Enter se lo darse por concluido |
| | | | |
|
RespuestaThemeninformationenDieses Thema ha 7 subscriber: |