AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Scrollbox kurzzeitig deaktivieren!

Ein Thema von ZeroX1337 · begonnen am 24. Jul 2014 · letzter Beitrag vom 24. Jul 2014
Antwort Antwort
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#1

Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 07:40
Hallo,

ich komme bei einem Problem einfach nicht weiter. Finde auch keine Infos dazu.
Ich arbeite mit FMX auf XE6.

Mein Problem: Ich habe meine ganzen Objekte in die TVertScrollBox gepackt, damit ich, wenn ich den Bildschirm vom iPad drehe, auch den Rest des Formulars sehen kann. Funktioniert alles wunderbar.

Allerdings habe ich auf der Form 2 Unterschriften Felder, und wenn ich dort jetzt was schreiben will bewegt sich das ganze Formular mit.

Jetzt möchte ich gerne, wenn ich in dem Unterschriftenfeld "MouseDown" und "MouseUp" Ereignis habe, dass die ScrollBox entsprechend in diesem Zeitraum "aussetzt".

Enable, Visible etc. funktioniert alles nicht, da die kompletten Objekte dort drin dann verschwinden.


Weiß jemand eine Lösung, bzw. kann mir sagen ob überhaupt alle Objekte in die Scrollbox müssen oder ob es auch eine andere Variante gibt?
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -

Geändert von ZeroX1337 (24. Jul 2014 um 08:03 Uhr)
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 08:13
Wie wärs bei Edit.OnEnter das Enabled der ScrollBox auf false zu setzen und das von dem Edit auf true. Bei Edit.OnExit dann das der ScrollBox wieder auf true ändern?
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#3

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 08:17
Das Problem ist, dass ich alle Objekte der ScrollBox unterordnen musste.
Wenn ich jetzt die ScrollBox disable dann sind auch alle anderen Objekte disabled.

Das ist alles kompliziert zu erklären. Fakt ist, wenn ich die ScrollBox enable = false setze ist alles weg.

Ich kann das Unterschriftenfeld aber auch nicht aus der ScrollBox herausnehmen, sprich überordnen. Denn dann bewegt sich das Feld überhaupt nicht mehr mit.
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -

Geändert von ZeroX1337 (24. Jul 2014 um 08:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.139 Beiträge
 
Delphi 12 Athens
 
#4

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 08:35
Einfach alle Scroll-Messages für die ScrollBox abfangen und schon wird nicht mehr gescrollt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#5

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 08:42
Könntest du mir vielleicht sagen wie ich das mache? Bin sehr neu was die Programmierung betrifft.
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 09:37
Einfach alle Scroll-Messages für die ScrollBox abfangen und schon wird nicht mehr gescrollt.
Es geht hier um Firemonkey, nicht die VCL.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.139 Beiträge
 
Delphi 12 Athens
 
#7

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 09:46
Auch da wird dennoch intern mit Messages gearbeitet, da man sich die Arbeit ersparen wolle, ein neues Message-System für's Delphi zu erfinden.

Das XE hier kennt den Affen noch nicht, also kann ich nicht mal eben nachsehn.
Ich würde dir ja empfehlen in den FMX-Quellcode zu schauen, aber die Starter hat sowas ja nicht.


Das überschreiben und nachsehn was alles ankommt:
procedure WndProc(var Msg: TMessage); override;
[add] In der ScrollBox, bzw. einer Ableitung davon. Oder mal schauen was TApplicationEvents für Ereignisse bietet.

Und danach kann man auch sowas nehmen:
procedure Xyz(var Message: TMessage); message XYZ;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (24. Jul 2014 um 10:14 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ZeroX1337
ZeroX1337

Registriert seit: 17. Jul 2014
Ort: Siegen
28 Beiträge
 
Delphi XE6 Starter
 
#8

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 09:48
Danke, ich schau mal nach!
André Bender
- Der PC rechnet mit allem, nur nicht mit seinem Besitzer. -

Geändert von ZeroX1337 (24. Jul 2014 um 09:53 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.139 Beiträge
 
Delphi 12 Athens
 
#9

AW: Scrollbox kurzzeitig deaktivieren!

  Alt 24. Jul 2014, 10:15
PS: Hatte meinen letzten Beitrag inzwischen nochmal etwas bearbeitet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  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 19:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz