Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Für Dinge zum Forum, Kritik, Verbesserungsvorschläge, Umfragen und ähnliches.
Antworten
hubblec4
Beiträge: 341
Registriert: Sa 25. Jan 2014, 17:50

Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von hubblec4 »

Hallo Lazarus gemeinde

Ich wollte mal nachfragen warum in der Lazarus 1.4 RC3 keine Icons mehr für die Dialog-Buttons angezeigt werden.

Die Buttons sind jetzt einfach nur grau und werden auch nicht mehr Centriert dargestellt.

Liegt das an der neuen RC3 oder habe ich was bei der zweit Installation verhauen?

LG
Hubble

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

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von theo »

Ein Screenshot sagt manchmal mehr als tausend Worte.

hubblec4
Beiträge: 341
Registriert: Sa 25. Jan 2014, 17:50

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von hubblec4 »

theo hat geschrieben:Ein Screenshot sagt manchmal mehr als tausend Worte.


da hast du auf jedenfall recht.

hier ein bild von einem MsgDialog mit den buttons "mbyes" und "mbno"

Bild

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

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von theo »

hubblec4 hat geschrieben:hier ein bild von einem MsgDialog mit den buttons "mbyes" und "mbno"

MsgDialog kenne ich nicht, nur MessageDlg.
Der zeigt bei mir die Icons einwandfrei. Lazarus 1.5 r48562M FPC 3.1.1 x86_64-linux-gtk 2
1.4 RC3 habe ich jetzt nicht extra installiert.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Tatsache, bei mir werden im Trunc ebenfalls keine Icons mehr gezeigt, war mir noch gar nicht aufgefallen. Scheint ein Bug unter Windows zu sein...

Code: Alles auswählen

procedure TForm1.Button1Click(Sender: TObject);
begin
  MessageDlg('Test', 'Test', mtConfirmation, [mbYes, mbNo], 'Test');
  Application.MessageBox('Test', 'Test', MB_ICONQUESTION + MB_YESNO);
end

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Ich habe eben mal nachgeschaut. Schuld ist dieser Patch http://bugs.freepascal.org/view.php?id=27664. Stellt man die Zeile (in win32lclintf.inc) wieder zurück, funktionieren die Icons wieder:

Code: Alles auswählen

function TWin32WidgetSet.PromptUser(const DialogCaption, DialogMessage: String;
  DialogType: longint; Buttons: PLongint; ButtonCount, DefaultIndex,
  EscapeResult: Longint): Longint;
...
  if (WindowsVersion >= wvVista) and (GetFileVersion(comctl32) >= ComCtlVersionIE6) then
//  if (WindowsVersion >= wvVista) and ThemeServices.ThemesEnabled then  //<- wie zuvor

Werde das mal melden...

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

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

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von theo »

Hmm, ich habe kein Problem unter Wine.
Habe eben noch upgedatet. Lazarus 1.5 r48762M FPC 3.1.1 x86_64-linux-gtk 2

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Hmm... nach hoffentlich war ich da jetzt nicht zu schnell :roll: : http://bugs.freepascal.org/view.php?id=27879

...muss auch mal updaten, mal sehen...

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Habe jetzt FPC 3.1.1 Rev 30612 und Lazarus 1.5 Rev 48762 gebaut mit gleichem Ergebnis. Komisch, dass das unter Wine geht...
Dateianhänge
Lazarus15.png

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Wie im Bugtracker erklärt, ist dies eine Anpassung an die vorhandenen Themes von Windows und damit gewollt. Gefällt mir persönlich zwar auch nicht, ist aber aber bei nativen Controls der konsequentere Weg.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

hubblec4
Beiträge: 341
Registriert: Sa 25. Jan 2014, 17:50

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von hubblec4 »

ich war übers WE weg daher antworte ich jetzt erst.

erstmal wieder rechtvielen dank für die infos und die hilfen.

also ist es ab jetzt so das es keine icons mehr für die buttons gibt?, und ebenfalls die Centrierung nicht mehr vorhanden ist?
also kein bug?

mmh wenn es so ist dann muss ich sagen ist das doof^^, denn es sieht einfach nicht mehr schick aus.

gibt es dennoch eine möglichkeit das wieder herzustellen oder muss man ab jetzt damit leben (oder man benutzt Lazarus 1.4 nicht :-( )

LG
hubble

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

hubblec4 hat geschrieben:gibt es dennoch eine möglichkeit das wieder herzustellen
Du könntest einfach die Themenservices ausstellen: Projekt -> Projekteinstellungen -> Anwendung -> Für Windows -> Haken bei "Themen mit Manifest-Datei einschalten" weg.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

hubblec4
Beiträge: 341
Registriert: Sa 25. Jan 2014, 17:50

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von hubblec4 »

Michl hat geschrieben:
hubblec4 hat geschrieben:gibt es dennoch eine möglichkeit das wieder herzustellen
Du könntest einfach die Themenservices ausstellen: Projekt -> Projekteinstellungen -> Anwendung -> Für Windows -> Haken bei "Themen mit Manifest-Datei einschalten" weg.



haken ist draussen, projekt neu kompiliert aber keine veränderung. immer noch keine icons.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von Michl »

Bei mir funktioniert das mit Lazarus 1.5 r48762M FPC 3.1.1 i386-win32-win32/win64 unter Windows 7 64 bit. K.A. ob sich das unter einer anderen Windowsversion anders verhält.

Im größten Notfall könntest du dir auch dein Lazarus anpassen. Du bräuchstest ja nur die oben gepostete Zeile (auch siehe Bugreport) wieder zu ersetzen, generell würde ich davon aber abraten (ich nutze ein angepasstes Lazarus und muss mir bei jedem Update die eigenen Patches wieder einpflegen - das geht dank TortoiseSVN auch recht unproblematisch - ist aber schon etwas mehr Aufwand).

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

hubblec4
Beiträge: 341
Registriert: Sa 25. Jan 2014, 17:50

Re: Lazarus 1.4 RC3 Dialog-Buttons ohne Icon mehr

Beitrag von hubblec4 »

windows 7 64bit nutze ich auch.

was das anpassen von lazarus angeht, da bin ich noch nicht so weit und trau mich da nicht ran. bis jetzt hat auch alles soweit funktioniert.

genutzt hatte ich dann auch sehr schnell QuestionDlg anstatt der etwas unfelxiblen MessageDlg.
ich hatte sowieso mal über ein eigenes Dialogfeld nachgedacht, da mir auch das noch bissl zu wenig einfluss auf gestalltung und buttons hat.

Antworten