Kombinierte Tasten GTK2

Für Fragen rund um die Ide und zum Debugger
Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Kombinierte Tasten GTK2

Beitrag von theo »

Könnt ihr im GTK2 IDE-Editor (Synedit) kombinierte Keys eingeben?
Vielleicht ist das ein Problem mit der Deutschschweizer Tastatur, aber ich kann z.B. kein '^' eintippen.
Angezeigt wird es, wenn ich es über Clipboard reinkopiere.
Aber auch alle anderen kombinierten Keys wie á ã etc funzen nicht.

Dafür erscheinen diese Zeichen bspw. in einem GTK2 TMemo zweimal:
ââãã^^

Ist das bei euch auch so?

_Bernd
Beiträge: 145
Registriert: Di 13. Feb 2007, 11:16

Beitrag von _Bernd »

Meine IDE ist leider GTK1. Aber wenn ich ein Synedit auf ein Formular ziehe und das Programm dann für GTK2 compiliere, dann gibt es keine Probleme mit dem '^'.

Gruß, Bernd.

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Danke für den Test. Ist denn das "^" auf der deutschen Tastatur auch ein deadkey? Also eine Taste, bei der erstmal nichts passiert, bis man eine weitere drückt?

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Ja, ist es, genauso wie ´ und `
Johannes

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Hmm, seltsam. Ich kann mir aber nicht vorstellen, dass an meinen Einstellungen was nicht stimmt. Anderen Programme wie Kwrite oder der GTK2 basierte Bluefish haben damit keine Probleme.

Welcher Keycode hat denn '^' auf der dt. Tastatur?
Bei mir ist es 146. Könnte man leicht so testen, wenn jemand mag:

Code: Alles auswählen

procedure TForm1.SynEdit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  ShowMessage(Inttostr(Key));
end;

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

^ hat die 220 bei mir, Windows und deutsche(Deutschland) Tastatur
Johannes

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Danke!
Mal sehen ob da für GTK2 ein Bereich um 146 ausgefiltert wird.
Bei GTK1 habe ich auch den Keycode 146, dort agiert das '^' aber nicht als deadkey, sondern erscheint sofort. In einem GTK1 TMemo ist alles wie es sein soll (deadkey).

Also ich fasse zusammen:
GTK1: TSynedit -> '^' erscheint, ist aber kein dead key.
GTK1: TMemo -> '^' erscheint, funzt wie es sein soll als dead key.
GTK2: TSynedit -> '^' erscheint nie.
GTK2: TMemo -> '^' erscheint doppelt.

Jetzt muss ich mir nur noch einen Reim drauf machen.... ;-)

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

^ hat bei mir unter Debian den Keycode149

Wenn ich mich recht entsinne, musste ich unter Linux das Tastatur-Layout "nodeadkeys" einstellen, um die ^-Taste wie gewohnt nutzen zu können.

Viele Grüße, Euklid

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Danke Euklid.
Aber mir geht's eigentlich nicht darum, am System rumzuschrauben, zumal es auf GTK1 und anderen Programmen ordentlich funzt, sondern eher darum herauszufinden, warum sich LazGTK2 nicht wie andere GTK2 Programme verhält.

_Bernd
Beiträge: 145
Registriert: Di 13. Feb 2007, 11:16

Beitrag von _Bernd »

theo hat geschrieben:Welcher Keycode hat denn '^' auf der dt. Tastatur?
Bei mir ist es 146. Könnte man leicht so testen, wenn jemand mag:
150 bei mir unter Ubuntu 7.10

Gruß, Bernd.

Benutzeravatar
theo
Beiträge: 10856
Registriert: Mo 11. Sep 2006, 19:01

Beitrag von theo »

Danke.
Somit scheint wenigstens klar, dass man das Problem in diesem Bereich nicht suchen muss, wenn sowieso alle versch. Keycodes haben.
;-)

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Sollten die Keycods nicht alle Gleich sein ?
das verstehe ich jetzt nicht. Der Key Code kann mit ord(key) Abgefragt
werden.
Wenn ich also ein key=VK_RETURN mache heißst das also nicht immer VK_RETURN = VK_RETURN Sein muss. oder wie ?
MFG
Michael Springwald

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Hallo Pluto!
pluto hat geschrieben:Sollten die Keycods nicht alle Gleich sein ?
das verstehe ich jetzt nicht. Der Key Code kann mit ord(key) Abgefragt
werden.
Der Theo meinte nicht den Code ord(key), sondern den Code, der bei durch seine obige Prozedur zurückgegeben wird.

Viele Grüße, Euklid

pluto
Lazarusforum e. V.
Beiträge: 7192
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Du meinst bei ShowMessage(Inttostr(Key)); ?
MFG
Michael Springwald

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

ja, genau. Die Zahl in Key entspricht nicht ord('^').

Antworten