AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Verwenden des TextInputPanels / der PenInputPanelLib_TLB
Thema durchsuchen
Ansicht
Themen-Optionen

Verwenden des TextInputPanels / der PenInputPanelLib_TLB

Ein Thema von Y.Elm · begonnen am 16. Jan 2012 · letzter Beitrag vom 16. Jan 2012
Antwort Antwort
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
427 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Verwenden des TextInputPanels / der PenInputPanelLib_TLB

  Alt 16. Jan 2012, 12:04
Nimm einfach das Fensterhandle des Edit-Felds her. Das funktioniert bei mir bisher ohne Probleme.
  Mit Zitat antworten Zitat
Y.Elm

Registriert seit: 19. Sep 2011
Ort: Berlin
21 Beiträge
 
Delphi 2010 Professional
 
#2

AW: Verwenden des TextInputPanels / der PenInputPanelLib_TLB

  Alt 16. Jan 2012, 13:50
Zitat:
Nimm einfach das Fensterhandle des Edit-Felds her.
Genau das versteh ich ja nicht. Dieses ominöse _RemotableHandle sieht folgendermaßen aus:
Delphi-Quellcode:
  _RemotableHandle = record
    fContext: Integer;
    u: __MIDL_IWinTypes_0009;
  end;
Diesem Record kann ich natürlich kein Handle mit der Deklaration HWND = type LongWord; zuweisen.
In meinem Test hab ich es mal so probiert:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  TIP: TextInputPanel;
  hnd: _RemotableHandle;
  res: HResult;
begin
  TIP := CoTextInputPanel.Create;
  hnd.fContext := Edit1.Handle;
  res := TIP.Set_AttachedEditWindow(hnd);
  Form1.Caption := inttostr(res);
  res := TIP.Set_InPlaceVisibleOnFocus(Integer(FALSE));
  Form1.Caption := Form1.Caption + ' - ' + inttostr(res);
end;
Als Ergebnis davon steht in der Caption " -2147024809 - 1", woraus ich schließe, dass TIP.Set_AttachedEditWindow(hnd); nicht funktioniert hat.
Edit: Und natürlich poppt dieses Tastatur-Icon wieder auf, was ich deaktivieren wollte.

Geändert von Y.Elm (16. Jan 2012 um 13:52 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
427 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Verwenden des TextInputPanels / der PenInputPanelLib_TLB

  Alt 16. Jan 2012, 14:34
Das glaub ich ist ein Fehler des Library Imports. Du kannst es so ersetzen:

Delphi-Quellcode:
function Get_AttachedEditWindow(out AttachedEditWindow: SYSINT): HResult; stdcall;
function Set_AttachedEditWindow(AttachedEditWindow: SYSINT): HResult; stdcall;
Da gab's mal irgendwo einen Kommentar von einem der Borlandleute dazu, ich weiß aber nicht mehr wann und wo.
  Mit Zitat antworten Zitat
Y.Elm

Registriert seit: 19. Sep 2011
Ort: Berlin
21 Beiträge
 
Delphi 2010 Professional
 
#4

AW: Verwenden des TextInputPanels / der PenInputPanelLib_TLB

  Alt 16. Jan 2012, 14:57
Herzlichen Dankan ULIK!
Nach deiner Antwort ist mir spontan aufgefallen, dass sich die Parameter der Funktion Set_AttachedEditWindow von ITextInputPanel und IPenInputPanel unterscheiden. Man, darauf muss man erstmal kommen .

Muss man das TextInputPanel für jedes Editfeld einzeln deaktivieren oder geht das auch Formularweit?
  Mit Zitat antworten Zitat
Benutzerbild von ULIK
ULIK

Registriert seit: 25. Sep 2006
Ort: Regensburg
427 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Verwenden des TextInputPanels / der PenInputPanelLib_TLB

  Alt 16. Jan 2012, 16:31
Ich glaube nicht, daß das global geht. Du bindest ja eine Panelinstanz immer an ein Fensterhandle. Aber da mußt vieleicht nochmal schauen.

Grüße,
Ulrich
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz