AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials Standard-Dialoge

Standard-Dialoge

Ein Tutorial von Matze · begonnen am 23. Feb 2005 · letzter Beitrag vom 7. Sep 2009
Antwort Antwort
Seite 3 von 4     123 4   
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#1

Re: Standard-Dialoge

  Alt 29. Mai 2007, 15:42
Es handelt sich hier aber im ein Set.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Standard-Dialoge

  Alt 29. Mai 2007, 15:45
oh. klar. sorry.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#3

Re: Standard-Dialoge

  Alt 29. Mai 2007, 15:50
@Luke: Normalerweise gebe ich Dir uneingeschränkt recht, da 00110100 + 00001100 eben 01000000 sind und nicht, wie evtl. erwartet 00111100.
Da die Konstanten aber von Microsoft klugerweise(?) so gewählt wurden, dass jeweils nur ein Bit gesetzt ist, kann man in diesem Fall wohlwollend darüber hinwegsehen (solange man nicht die kombinierten, wie mbYesNoCancel oder so addiert).
@inherited: En contraire, mon ami. Das sind pure Integerkonstanten, auch die kombinierten.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Standard-Dialoge

  Alt 29. Mai 2007, 15:55
Ändert nichts an der Tatsache das sich Sets ohne Probleme mit + zusammenprökeln lassen.
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Standard-Dialoge

  Alt 29. Mai 2007, 21:52
Hallo,

Zitat von Sidorion:
@inherited: En contraire, mon ami. Das sind pure Integerkonstanten, auch die kombinierten.
Sicher?

Delphi-Quellcode:
// aus "Dialogs.pas"
const
  mbYesNo = [mbYes, mbNo];
  mbYesNoCancel = [mbYes, mbNo, mbCancel];
  mbYesAllNoAllCancel = [mbYes, mbYesToAll, mbNo, mbNoToAll, mbCancel];
  mbOKCancel = [mbOK, mbCancel];
  mbAbortRetryIgnore = [mbAbort, mbRetry, mbIgnore];
  mbAbortIgnore = [mbAbort, mbIgnore];

// aus "Windows.pas"
const
  MB_OK = $00000000;
  MB_OKCANCEL = $00000001;
  MB_ABORTRETRYIGNORE = $00000002;
  MB_YESNOCANCEL = $00000003;
  MB_YESNO = $00000004;
  MB_RETRYCANCEL = $00000005;
Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Standard-Dialoge

  Alt 29. Mai 2007, 22:27
Richtig. Nix da Integerkonstanten. In der Delphi-Hilfe ist TMsgBtn als enum definiert (mbOK, mbCancel...) und TMsgButtons als set of TMsgBtn. mbOkCancel und so weiter sind schließlich Set-Konstanten vom Typ TMsgButtons.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#7

Re: Standard-Dialoge

  Alt 29. Mai 2007, 23:01
Nur um Klarheit zu schaffen:

Hier handelt es sich um den Unterschied zwischen der Win32-API Funktion MessageBox und der entsprechenden Kapselung von Delphi unter dem Namen MessageDlg.

Die erstere arbeitet natürlich mit Integerkonstanten, die man idealerweise mit den bitoperatoren kombiniert (or, and, xor) wobei die letztere mit Sets arbeitet, die man mit den Set-operatoren (gibts das Wort?) kombiniert - hierzu auch das Tutorial zum Thema Sets .
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Standard-Dialoge

  Alt 29. Mai 2007, 23:11
Ja, und wir haben die ganze Zeit über über MessageDlg gesprochen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Dezipaitor

Registriert seit: 14. Apr 2003
Ort: Stuttgart
1.701 Beiträge
 
Delphi 7 Professional
 
#9

Re: Standard-Dialoge

  Alt 30. Mai 2007, 10:14
Zitat von 3_of_8:
Ja, und wir haben die ganze Zeit über über MessageDlg gesprochen.
Der ist natürlich auch nicht Threadsicher.
Christian
Windows, Tokens, Access Control List, Dateisicherheit, Desktop, Vista Elevation?
Goto: JEDI API LIB & Windows Security Code Library (JWSCL)
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#10

Re: Standard-Dialoge

  Alt 30. Mai 2007, 13:15
Ja bei Sets ist das '+' völlig in Ordnung und entspricht der Mengenoperation 'Vereinigung'. Das '*' wäre dann ein 'Schnittmenge'. In diesem Fall ist Or als Boolscher Operator Disjunktion sogar falsch.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4   

Themen-Optionen Tutorial durchsuchen
Tutorial durchsuchen:

Erweiterte Suche
Ansicht

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 09:58 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