18. Mai 200619 j Hallo an Alle, ich habe ein PropertySheet mit mehreren PropertyPages. Ich möchte, dass das Programm nur beendet wird, wenn ich auf OK "klicke". Zur Zeit beendet er auch mit einem Tastendruck von Return das Programm. Ich habe im Forum nach ähnlichen Beiträgen gesucht, auch einige gefunden, die Ansätze dort lösen jedoch nicht mein Problem. Im Grundsatz soll wenn Enter gedrückt wird gar nichts passieren. Hat jemand eine Idee? Gruß KK
19. Mai 200619 j edit dialog resources and remove all BS_DEFPUSHBUTTON styles. Oder in case WM_INITDIALOG: button_ok->RemoveStyle(BS_DEFPUSHBUTTON);
19. Mai 200619 j Hallo sapero, danke für Deine Antwort, ich habe zur Zeit nicht die Möglichkeit es auszuprobieren, aber es liest sich für mich, als ob ich so den OK-Button deaktivieren würde. Der OK-Button soll aber bestehen bleiben, ich möchte nur nicht, dass die Return-Taste den Ok-Befehl ausführt und den Dialog schließt. Kann ich mit deiner Idee die Return-Taste deaktivieren? Gruß KK
19. Mai 200619 j Nein so ist es nicht. Der OK Button ist im Normalfall der Default Button. Ein Default Button wird immer dann angesprochen wenn die Entertaste gedrückt wird. Du entziehst im mit dem Flag lediglich den Defaultsyle. Somit reagiert keiner mehr auf Enter
19. Mai 200619 j Hallo Anybody, Danke für die schnelle Antwort. Das ist ja dann in der Tat das was ich gesucht habe. Ich werde es heute sofort ausprobieren, ich danke Dir und sapero für eure Hilfe. Gruß KK
21. Mai 200619 j Hallo nochmal, edit dialog resources and remove all BS_DEFPUSHBUTTON styles. Oder in case WM_INITDIALOG: button_ok->RemoveStyle(BS_DEFPUSHBUTTON); Ich habe nochmal eine Frage. Ich finde weder in irgendwelchen Dateien meines Programms "BS_DEFPUSHBUTTON", um diese Styles zu entfernen, noch finde ich in der MSDN oder beim Programmieren den Befehl "RemoveStyle" um den Button unter InitDialog zu deaktivieren. Wie muss ich den Vorschlag einsetzen? Gruß KK
22. Mai 200619 j soll es denn auch nicht funktionieren, wenn man mit Tap navigiert? Mit was arbeitest du denn? Im .NET - Studio kannste das über Tapstop false einstellen.
22. Mai 200619 j Hallo, habe mein Problem soeben gelöst. Wenn ich mit der PreTranslateMessage die Return-Taste und die Escape-Taste abfange und dann einen Wert ungleich Null zurückgebe, so überspringt er die Beendigung des Dialogs. Ich weiss, dass Klotzkopp davor warnt diese Tasten zu blockieren, aber wenn man das Programm für eine Firma schreibt, die darauf besteht, kann man nichts machen:D Gruß KK
22. Mai 200619 j naja du könntest nach wie vor sagen, was du denn benutzt.. und mal in den eigenschaften des Buttons nachschaun, ob es da nicht eine möglichkeit gibt das einzustellen. btw. die Warnung ist gerechtfertigt...
22. Mai 200619 j Hallo Cleo, ich wollte Deinen Post nicht übergehen, ich bin ja froh, wenn Leute mir helfen möchten. Ich habe meinen Post auch nur mit einem Auge geschrieben, um kurz mitzuteilen, dass es läuft. Ich arbeite mit dem VisualStudio.net 2003. Das der Hinweis gerechtfertigt ist, weiss ich. Ich würde diese Funktionen für mein eigenes Programm auch nicht deaktivieren, aber wie gesagt, da habe ich in diesem Fall keinen Einfluss drauf. Gruß KK
22. Mai 200619 j doch hab dir doch geschrieben wie einfach mal an den Button-Eigenschaften rumspielen =) bei mir funktioniert es
22. Mai 200619 j Hallo Cleo, da hast du mich nun aber komplett falsch verstanden. Als ich schrieb, ich hätte keinen Einfluss drauf, meinte ich, dass ich keinen Einfluss darauf habe, weil ich das Programm für eine Firma schreibe, deren Vorgaben ich einzuhalten habe. Darüber hinaus werden die Ok- und Abbrechen-Button automatisch in dem PropertySheet erzeugt. Ich sehe sie also als Steuerelement nicht. Natürlich könnte ich code-mäßig die Eigenschaften ändern, aber so wie nun läuft es ja auch korrekt. Gruß KK
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.