Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Slider1 (sowas wie TrackBar) MAX wert ändern? (https://www.delphipraxis.net/15810-slider1-sowas-wie-trackbar-max-wert-aendern.html)

Pseudemys Nelsoni 4. Feb 2004 14:04


Slider1 (sowas wie TrackBar) MAX wert ändern?
 
hoi,

wie ihr ja sicher wisst gibt es die komponente "TrackBar" diese hat den Wert "MAX", nun hab ich in einem Spiel as Handle des Fensters usw ausgelesen, in diesem fenster ist auch die komponente "Slider1" (delphi hat die nicht, funktioniert aber genau wie die TrackBar). Wie ändere ich den wert "Max" von dieser komponente per api per sendmessage?

das wurde von toms tool WinSpy ausgelesen:

Zitat:

ClassName: "msctls_trackbar32" | Caption: "Slider1" | Handle: 197384

würde es mit "TBM_SETRANGEMAX" gehen?

Pseudemys Nelsoni 6. Feb 2004 22:32

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
*hochschieb*


wie ich aus einem anderen thread schon gelesen habe geht das senden an eine TrackBar nicht so leicht. wie geht es dann?

NicoDE 7. Feb 2004 05:59

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
SendMessage(Handle, TBM_SETRANGEMAX, True, NewMax);

Pseudemys Nelsoni 7. Feb 2004 10:32

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
hi Nico,

das habe ich schon versucht, es tut sich aber nichts, das Maximum bleibt 4. Die handles sind 100% richtig, weil sie grösser als 0 sind und mir showmessage auch angezeigt wird bei der > 0 abfrage.

Code:
procedure TForm1.Button1Click(Sender: TObject);
var
  h1, h2, h3: hwnd;
begin
  h1 := FindWindow('Tiberian Sun', 'Tiberian Sun');
  h2 := FindWindowEx(h1, 0, '#32770', '');
  h3 := FindWindowEx(h2, 0, 'msctls_trackbar32', 'Slider1');
  if h3 > 0 then SendMessage(h3, TBM_SETRANGEMAX, 1, 100);
end;


^^^^das geht nicht. Ändert sich nicht von 4 auf 100.

Pseudemys Nelsoni 8. Feb 2004 22:24

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
*wenn ichs nochmal hochschieben darf*. Es muss doch gehen :cry:

NicoDE 8. Feb 2004 22:44

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
Zitat:

Zitat von Pseudemys Nelsoni
Es muss doch gehen

Mag sein, aber Ferndiagnose ist relativ schwierig :)
Ich gehe einfach mal davon aus, dass entweder das Programm es immer wieder neu setzt, oder das Control (trotz des richtgen Klassennamens) nicht auf die Nachricht reagiert, da es möglichweise gekapselt wurde...
...da ich das Programm nicht testen kann, kann ich da nur mutmaßen.

Pseudemys Nelsoni 8. Feb 2004 23:10

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
es gibt ja einen patch der genau dieses kann, nun wollte ich ihn für mich nachmachen

NicoDE 8. Feb 2004 23:45

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
Zitat:

Zitat von Pseudemys Nelsoni
es gibt ja einen patch der genau dieses kann, nun wollte ich ihn für mich nachmachen

Derjenige - der den Patch erstellt hat - wird sicher mehr wissen...

Pseudemys Nelsoni 9. Feb 2004 02:01

Re: Slider1 (sowas wie TrackBar) MAX wert ändern?
 
jo, aber den kann ich nicht fragen, wel ich den nicht auffinde :'(


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 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