| |
|
|
- Página 1 - |
|
Ralph Theobald | ¡Hola ,
Yo una Gridbox en un Choicebox gebastelt , desafortunadamente Es el Gridbox no erreichbar, como kann Yo esta aktivieren. KompilierenMarcaSeparaciónSet(FastMode,1)
$H windows.ph
$H messages.ph
Declare oldcallback&,static&,brush&,raus&,hGrid&,titel$
cls
oldcallback&=~SetWindowLong(%hwnd,~GWL_WNDPROC,ProcAddr(newcallback,4))
static&=Create(choicebox,%hwnd,Choicebox,16,16,560,180)
WhileNot raus&
WaitInput
EndWhile
End
PROC setcolor
Parameters col&,bk&,wParam&
declare Brush&
IF Brush&
~DeleteObject(Brush&)
endif
Brush& = ~CreateSolidBrush(bk&)
~SetBkMode(wParam&, ~TRANSPARENT)
~SetBKColor(wParam&,RGB(195,116,95))
~SetTextColor(wParam&,col&)
RETURN Brush&
endproc
Proc newcallback
Parameters wnd&,msg&,wparam&,lparam&
IF msg&=~WM_CTLCOLOREDIT
RETURN SetColor(rgb(255,0,0),rgb(255,255,0),wParam&)
Endif
IF msg&=~WM_CTLCOLORLISTBOX
Titel$ = Links;0;80;Mitte;2;100;Rechts;1;80
hGrid&=Create(GridBox,lparam&, Titel$, 3,1,1,549,140)
AddString(hGrid&, AB|DEF|0123)
AddString(hGrid&, GHI|J23KL|012345)
IF brush&
~DeleteObject(brush&)
EndIf
brush&=~CreateSolidBrush(Rgb(0,0,255))
RETURN brush&
Endif
If msg&=~WM_CLOSE
~DeleteObject(brush&)
raus&=1
Endif
RETURN ~CallWindowProc(oldcallback&,wnd&,msg&,wparam&,lparam&)
s4 href='./../../funktionsreferenzen/XProfan/ENDPROC/'>ENDPROC
Saludo Ralph |
|
|
| |
|
|
|
| |
|
- Página 2 - |
|
Rolf Koch | |
|
| |
|
|
| |
|
- Página 3 - |
|
|
| KompilierenMarcaSeparación A Info: Hier se FindWindowExA aufgerufen. Für 65556 podría uno auch %Desktop escribir y en %Desktop befinden se en el Regel mehrere Ventana dieser Klasse (siehe Tasks and Token).
Desde que kein XProfan10 habe, Me estoy dando el weitere Ursachenforschung sólo veces a el otro de. |
|
|
| |
|
|
|
| Ach sí - y %Desktop es natürlich no en cada Sistema 65556 - como gesasgt, algo windig el Code.... |
|
|
| |
|
|
|
Ralph Theobald | ¡Hola ,
wer se porque igual en el Luft ir .
Vielen Dank primero a todos para el rege Teilnahme a el Problema.
If Yo deinen Code algo modifiziert. Im Interpreter laufen el beiden Versionen zwar unterschiedlich, aber ellos laufen. Kompiliert son ellos glaube Yo no a gebrauchen KompilierenMarcaSeparaciónDECLARE __cf1&,__cf2&
Def __cf1(2) !KERNEL32,GetProcAddress
Def __cf2(1) !KERNEL32,GetModuleHandleA
__cf1&=__cf1(__cf2(user32.dll),FindWindowExA)
__cf2&=__cf1(__cf2(user32.dll),GetAsyncKeyState)
CLS
var STATIC&=CREATE(choicebox,%HWND,Choicebox,16,16,560,180)
USERMESSAGES 16,$0134
WHILE 1
WAITINPUT
SELECT %UMESSAGE
CASEOF 16
BREAK
CASEOF $0134
PROCEEDCHOICEBOX
OTHERWISE
ENDSELECT
ENDWHILE
end
proc PROCEEDCHOICEBOX
var TITEL$=Links;0;80;Mitte;2;100;Rechts;1;80
var PARENT&=call(__cf1&,65556,0,ComboLBox,0)
var HGRID&=CREATE(GridBox,%HWND, TITEL$, 3,16,40,WIDTH(PARENT&),HEIGHT(PARENT&))
SENDKEY(PARENT&,27)
ADDSTRING(HGRID&,AB|DEF|0123)
ADDSTRING(HGRID&,GHI|J23KL|012345)
WAITINPUT
var S$=
IF GETCURSEL(HGRID&)>-1
S$=GETSTRING$(HGRID&,GETCURSEL(HGRID&))
ENDIF
DESTROYWINDOW(HGRID&)
Combobox_if1 DESTROYWINDOW(HGRID&) auskommentiert
Combobox_if2 DESTROYWINDOW(HGRID&) im code enthalten
IFNOT S$=
LOCATE 20,1
PRINT Ausgewählt: ,S$
ENDIF
../function-references/XProfan/ENDPROC/'>ENDPROC
Saludo Ralph |
|
|
| |
|
|
|
Ralph Theobald | An todos,
el beiden obigen Versionen laufen sólo bajo Win XP, Xprofan 10 En uno Versión erscheint el Listview, uno klickt una Eintrag a,el Ergebnis se adecuado.el Box klappt otra vez una.
En otro Versión puede ser el Spaltenbreite verstellen , una Ergebnis se ausgegeben, aber sólo una vez.
Beides zusammen wäre ideal.
Compilat: 1: LV se adecuado, Einträge dejar se auswählen , voluntad aber no ausgegeben
Compilat 2: Edición es sólo después de cada 3. Clic,
Bajo Xprofan 8 , w2k klappt el box sólo kurz en
Saludo Ralph |
|
|
| |
|
|
|
RGH | Ralph Theobald
Bajo Win2k , Xprofan 8 como en Andreas .
Mich wundert no, daß Gridboxen no bajo XProfan 8 trabajo, como lo el sólo seit XProfan 10 son!
Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 08.03.2007 ▲ |
|
|
|
|
| RGH
Mich wundert no, daß Gridboxen no bajo XProfan 8 trabajo, como lo el sólo seit XProfan 10 son! Roland
Auch el con XProfan10 compilierte EXE va como no (du Scherzkecks du ) |
|
|
| |
|
|
|
| Herjeh lo ging me en erster Linie por lo tanto en una solución con Usermessages umzustellen, %desktop Yo no con 65556 gemeint - tener aquí en el Eile a flüchtig recherchiert. |
|
|
| |
|
|
|
Ralph Theobald | Wenn Yo una gridbox z.B. en un Rebar poner, übernimmt Windows el Verwaltung des Controls , sobald Yo anklicke.
Yo habe me Handle el Listbox por el Callback besorgt.Wenn alguien una otro Möglichkeit sabe , entonces her así.
Yo voluntad lo veces todavía con el Listview.dll probieren, aber el va wahrscheinlich auch no.
Als Solución kann Yo sólo vorstellen:
1. Edición innerhalb el Callbackroutine. (a aufwendig) 2. Das Handle el Listbox sin Callback (como?) ,entonces debería Ifs Método sin esta ominösen Call klappen !?
Lo wundert mich no ,dass lo en Programación el Controls en Windoof offensichtlich no roten Faden son. Beim Rebar setzt al Control en el Band , Windows passt automáticamente el Größe des Controls a el Größe des Bandes a.En Choicebox funktioniert el así no. Was para una Sinn macht entonces el Befehl Setparent ?
Saludo Ralph |
|
|
| |
|
|
|
|
Das Handle el Listbox sin Callback (como?) ,entonces debería Ifs Método sin esta ominösen Call klappen !?
Yo saber evtl. como, kann Yo pero no testen - kein XP y kein XProfan10, sorry. Und si uno en mi Bemühungen de denen Yo persönlich nichts habe no reagiert, Yo auch irgendwann no Lust mehr - es doch einsehbar - oder? Tschau.
PS: Ein Tool, el para Ejemplo en Desarrollo solcher solchen muy gute Dienste Leisten podría, wäre Tasks and Token - como sieht uno bastante genau wo lo windig se y por qué. |
|
|
| |
|
|
|
Ralph Theobald | ¡Hola Andreas, Entschuldigung , pero yo quería dich no übergehen.Yo habe mich en allen bedankt el me geholfen haben.Damit meinte Yo auch dich. Leider bin Yo no así una begnadeter Programmierer como meisten hier, deshalb frage Yo sí. Zu Task & Token : Yo habe me Programa installiert, pero yo betreibe Profano sólo como Hobby, deshalb brauche Yo siempre algo länger en mich en el neuen Programas einzuarbeiten.Yo habe con Spy++ intenta el Messages abzufangen, aber sin Erfolg. Yo sehe el Ganze de paso genau como Usted, möglichst no undokumentierten Befehle oder Tricksereien, el sólo en una Rechner,una Betriebssystem oder uno xprofanversion laufen herzustellen.
Vielen Dank
Ralph |
|
|
| |
|
|
|
| |
|
| |
|
|