| |
|
|
Rainer Hoefs | ¡Hola, Yo necesidad veces otra vez Ayuda. Posesiones hier en el Foro nichts gefunden Yo meinte encontrar o. suchen a debería.
Yo habe zwei Rechnungs-Programas geschrieben el en unsere Geschäfte zugeschnitten son (meines y el meiner Frau). Sie son DBase orientiert y haben entsprechend viele Eingabeobjekte. Am Anfang fueron el Elemente con el LemonEd VisualDesigner correcto palziert. Aber como en uno solchen Desarrollo es kamen todavía algunos Elemente dazu. Nun stimmt el Tab-Orden überhaupt no mehr.
Nun necesidad Yo una Ayuda dazu, cómo el Felder en un richtige Tab-Orden bringen kann. Geht el encima irgendeine Tabla oder con irgendwelchenSendmessage-Zuweisungen?
Für jede Ayuda dankbar.
Saludo y schönen Sonntag Rainer |
|
|
| |
|
|
|
| ¡Hola Reiner,
una einfache Método, el Tabindex nachträglich - also después de Erzeugung el Controls - festzulegen, hay imho no. Sehr unlöblich.
Sombrero offensichtlich auch nichts con el ControlID a tun etc., muy schade.
Scheinbar es el Einfachste, el Controls en Tabreihenfolge a redactar - also schlicht el Erstellungsreihenfolge einzuhalten.
Andernfalls Será mejor que te va sólo komplizierter.
So podría uno z.B. por:
el Tabstop primero entfernen en entonces wiederum z.B. por Keyboard-Hook el Tabreihenfolge incluso a verarbeiten. Solch Hook wäre entonces aber sauber sólo nProcs oder por DLL herzustellen. Si usted daran Interesse hast, entonces simplemente informe. Roland wiederum podría algo como en seine wProc einbauen - vlt. algo para el kommenden XProfan-Versionen, settabindex, gettabindex... |
|
|
| |
|
|
|
Rainer Hoefs | Gracias, aber el scheint me a kompliziert a voluntad.
Was simplemente seltsam es, el Felder son en Erstellung en el Programa, also en el Procedimiento el el Diálogo/el Ventana generiert, en el deseado Reihenfolge angeordnet. Dennoch voluntad algunos überhaupt no angesprungen.
Rainer |
|
|
| |
|
|
|
| Rainer Hoefs (19.07.15)
Dennoch voluntad algunos überhaupt no angesprungen.
Rainer
Denen fehlt vmtl. el ws_tabstop Stil, el kannst Usted simplemente con SetStyle hinzufügen. |
|
|
| |
|
|
|
Rainer Hoefs | Ok, danke, voluntad Yo versuchen. Rainer |
|
|
| |
|
|
|
Rainer Hoefs | Gracias, funktioniert aber auch no. Posesiones mehere Felder así versehen. Lo ändert se el Rahmen des Edit's aber anspringen con Tab funktioniert no.
Rainer |
|
|
| |
|
|
|
Rainer Hoefs | Yo habe como una Vermutung.
Yo habe el Dialoge con el LemonEd-VisualDesigner gemacht. El Elemente son en diverse Groupboxen gesetzt, el Optik wegen, en klare Bereiche a definieren. Der Visual-Designer verändert entonces el Zugehörigkeit des Elements en el Groupbox por SubClass-ing, el Koordinaten beziehen se z.B. auch en el Start el Groupbox y el Handle el Groupbox es como Mutterobjekt en el Createbefehl.
Das Element bekommt entonces antes Waitinput-Bucle una Subclass Handle&, 1 - Befehl y para Ende des Programa después de el Waitinput-Bucle otra vez una Subclass Handle&, 0 Befehl.
Yo vermute, daß lo daran liegt, porque todos Elemente con el %Hwnd-Zuordnung trabajo con el Tabtaste como gewünscht.
Nun voluntad Yo veces el Diálogo umbauen y lo versuchen, macht 'ne Menge Arbeit el ganzen Koordinaten X + Y a ändern.
Rainer |
|
|
| |
|
|
|
Rainer Hoefs | OK, habe ahora todos Dialogelemente el %hwnd zugeordnet, Subclassing es geblieben como bisher.
Nun klappt lo einwandfrei, el Elemente voluntad en el Reihenfolge con el Tabulator angesprungen como ellos en el Diálogo erstellt voluntad.
Bleibt todavía el Cuestión si en el SubClassProc tal vez sólo el Message para el Tab-Taste fehlt???
SubclassProc
Select %smessage
CaseOf $114, $115
SendMessage(%hwnd, %smessage, &swparam, &slparam)
CaseOf $101, $202, $205, $208
SendMessage(%hwnd, &WM_COMMAND, MakeLong(GetDlgCtrlID(&swnd), 0), &swnd)
EndSelect
ENDPROC
Wieder qué gelernt!
Rainer |
|
|
| |
|
|
|
| Musste Yo auch irgendwann Aprendizaje veces, para Dialoge el más que 2-3 Controls enthalten, niemals irgendwelche Designer a nutzen pero siempre algo como como una Markup-Language herzubilden a Controls automáticamente anhand el Struktur el Datenbank a erzeugen.
Por ejemplo escribir Yo komplexere Programas sólo todavía así, dass Dinge como Eingabefelder etc. se selbständig orientieren rein anhand dessen qué en el Datenbank es. So kann Yo en uno Datenbank simplemente el Struktur uno Tabla ändern y inmediatamente es auch el Programa adaptado.
Alles otro artet sólo de o. se en correcto komplexen Dingen kaum todavía handhabbar. |
|
|
| |
|
|
|
| Rainer Hoefs (19.07.15)
Bleibt todavía el Cuestión si en el SubClassProc tal vez sólo el Message para el Tab-Taste fehlt???
Sicherlich kannst Usted z.B. por wm_down y vk_tab el Taste abfragen, oder auch Enter etc. -
Yo allen Controls aber el ws_tabstop Flag entziehen (como oben beschrieben) y incluso una Rutina einsetzen el entonces el Focus setzt z.B. después de el Reihenfolge el Handles en uno Liste oder en un Array. |
|
|
| |
|
|