COPY, PASTE und CUT

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

COPY, PASTE und CUT

Beitrag von Josef Sniatecki »

Oftmals habe ich im PB-CodeArchiv gewühlt und nichts passendes gefunden.

Wie kann ich die Optionen Kopieren, Einfügen und Ausschneiden für
ein Editorgadget aktivieren. Mit dem Stringgadget funktioniert das von
Anfang an.

Doch wie sieht das mit dem Editorgadget aus?

Hab mal dieses Thema in APIs eingetragen, da bestimmt irgendwelche
API-Befehle kommen werden. (Hoffentlich :oops: )
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Selber programmieren :wink:
Such mal nach #WM_CONTEXTMENUE für das Ereignis, sowie nach
#WM_COPY, #WM_PASTE usw.

Dann kannste vielleicht etwas konkreter werden.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

@ts-soft:

Das ist schon mal ein Ansatz.

Was ich brauche
ist ersteinmal das Popupfenster mit den drei Optionen und das ermitteln
des ausgewählten Textes. Dazu bräuchte ich noch Erfahrungen mit dem
Einfügen eines Textes.

Ich sehe schon, dass das Thema ein bisschen umfangreich wird. :shock:
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Den ausgewählten Text, position oder ähnliches brauchste nicht zum Pasten,
Löschen, Kopieren usw., lediglich die Message rausgeben!

So schlimm ist es also garnicht :wink:

// edit
schon mal ein Anfang:
http://www.purebasic.fr/german/viewtopi ... 412#109412
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

Das mit dem Einfügen ist mir ein bisschen unklar. Ich meine einen
Beitrag vor einigen Tagen gesehen zu haben, wo es darin ging, einen
Text mitten in einen vorhandenen Text einzufügen.
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
Josef Sniatecki
Beiträge: 657
Registriert: 02.06.2008 21:29
Kontaktdaten:

Beitrag von Josef Sniatecki »

ts-soft hat geschrieben:schon mal ein Anfang:
http://www.purebasic.fr/german/viewtopi ... 412#109412
Danke für den Link. Hab die wichtigsten Stellen gefunden.

Also durch "SendMessage(GadgetID(MeinEditor),#WM_COPY/PASTE/CUT)".
EDIT: Den Popup Menu kann ich selbst proggen.
PB 4.61 | Windows Vista - 32Bit
Homepage

"Wahrlich es ist nicht das Wissen, sondern das Lernen, nicht das Besitzen sondern das Erwerben, nicht das Dasein, sondern das Hinkommen, was den grössten Genuss gewährt." - Carl Friedrich Gauß
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Josef Sniatecki hat geschrieben:EDIT: Den Popup Menu kann ich selbst proggen.
Der sollte nach Möglichkeit im #WM_CONTEXTMENU ereignis, das nur in
einem Callback ankommt:

Code: Alles auswählen

Procedure WindowCallback(WindowId, message, wParam, lParam)
  Protected ReturnValue = #PB_ProcessPureBasicEvents

  Select message
    Case #WM_CONTEXTMENU

      If wParam = GadgetID(1)
        Debug "Hier DisplayPopupMenu() einfügen"
      EndIf
      ProcedureReturn 0

  EndSelect
  ProcedureReturn ReturnValue
EndProcedure

If OpenWindow(0, #PB_Ignore, #PB_Ignore, 640, 480, "Editor") And CreateGadgetList(WindowID(0))
  SetWindowCallback(@WindowCallback())
  EditorGadget(1, 10, 10, 620, 460)
  
  While WaitWindowEvent() <> #WM_CLOSE : Wend
    
EndIf
Ich würde es jedenfalls so machen :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Shardik
Beiträge: 746
Registriert: 25.01.2005 12:19

Beitrag von Shardik »

Josef Sniatecki hat geschrieben:Wie kann ich die Optionen Kopieren, Einfügen und Ausschneiden für ein Editorgadget aktivieren.
Beispiel von srod: http://www.purebasic.fr/english/viewtop ... 83&start=2
Beispiel von ts-soft: http://www.purebasic.fr/german/viewtopi ... 40&start=1
(ts-soft sollte vielleicht einmal seine eigenen zahllosen Beispiele katalogisieren :mrgreen:)
Beispiel von JayCool: http://www.purebasic.fr/german/viewtopi ... 10&start=5
Beispiel von El_Choni zum Kopieren des kompletten Inhaltes über das OLE-Interface (noch für PB 3):
http://www.purebasic.fr/english/viewtop ... 82&start=3
Josef Sniatecki hat geschrieben:Ich meine einen Beitrag vor einigen Tagen gesehen zu haben, wo es darin ging, einen Text mitten in einen vorhandenen Text einzufügen.
Meine Wenigkeit: http://www.purebasic.fr/german/viewtopi ... 99&start=2
Antworten