MsgBox nicht blocken

Anfängerfragen zum Programmieren mit PureBasic.
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

MsgBox nicht blocken

Beitrag von ¯\_(ツ)_/¯ »

Wenn ich ein MessageRequester in meinem Fenster starte dann blockt die Meldung
meine Anwendung. Kann ich die Meldung auch unabhängig starten ohne dass die
Meldung meine Anwendung blockt?
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MsgBox nicht blocken

Beitrag von RSBasic »

Es gibt mehrere Möglichkeiten.
Entweder erstelst du dein eigenes Fenster im selben Stil wie eine MessageBox.
Oder du rufst die MessageBox in einem Thread auf.
Oder du verwendest die WinAPI-Funktion MessageBox_(). Dort kannst du das Parent-Fenster oder 0 für kein Fenster angeben:

Code: Alles auswählen

MessageBox_(0, @"Titel", @"Nachricht", 0)
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Re: MsgBox nicht blocken

Beitrag von ¯\_(ツ)_/¯ »

Danke :) Gibts auch den PathRequester auch ohne Blockierung?
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MsgBox nicht blocken

Beitrag von RSBasic »

Ja: http://www.rsbasic.de/aktualisierung/wi ... esterEx.pb
In dem Beispielcode die folgende Zeile:

Code: Alles auswählen

bi\hwndOwner = GetActiveWindow_()
einfach durch:

Code: Alles auswählen

bi\hwndOwner = 0
ersetzen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Re: MsgBox nicht blocken

Beitrag von ¯\_(ツ)_/¯ »

Wieder Danke ! Ging schnell musste mich nicht mal abmelden. :D Wusst ichs doch
dass da gleich eine Lösung kommt. :D Hat sich gelohnt paar mal F5 zu drücken. :D
Sry ich muss wieder eine Frage stellen. Hast du auch was für OpenFileRequester?
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: MsgBox nicht blocken

Beitrag von RSBasic »

Code: Alles auswählen

EnableExplicit

Define Filename$
Define OPENFILENAME.OPENFILENAME

OPENFILENAME\lStructSize = SizeOf(OPENFILENAME)
OPENFILENAME\hWndOwner = 0
OPENFILENAME\lpstrFile = @Filename$
OPENFILENAME\nMaxFile = #MAX_PATH
OPENFILENAME\Flags = #OFN_EXPLORER | #OFN_ENABLESIZING | #OFN_FILEMUSTEXIST

If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  
  If GetOpenFileName_(OPENFILENAME)
    Debug Filename$
  EndIf
  
  Repeat
    Select WaitWindowEvent()
      Case #PB_Event_CloseWindow
        End
    EndSelect
  ForEver
EndIf
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Re: MsgBox nicht blocken

Beitrag von ¯\_(ツ)_/¯ »

Super danke :allright:
Und wenn ich SaveFileRequester auch haben möchte muss ich nur
GetSaveFileName anstelle von GetOpenFileName nutzen. Das geht!
Wow diesmal hab ich was selber gelöst. :allright:
Danke nochmal deine Hilfe. Jetzt hab ich alles. :allright:
Bild
Derren
Beiträge: 557
Registriert: 23.07.2011 02:08

Re: MsgBox nicht blocken

Beitrag von Derren »

Im schnitt 3,6 Minuten Antwortzeit. Der RS-Bot ist aber ziemlich langsam heute :lol: :allright:
Signatur und so
¯\_(ツ)_/¯
Beiträge: 141
Registriert: 18.08.2017 09:35

Re: MsgBox nicht blocken

Beitrag von ¯\_(ツ)_/¯ »

Echt mal, er kann ruhig mal in Echtzeit antworten diese faule Socke,
ich habe nicht den ganzen Tag öh Minute Zeit. Ich habe nicht umsonst
79 € bezahlt. :mrgreen:
Bild
Bild
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: MsgBox nicht blocken

Beitrag von Bisonte »

¯\_(ツ)_/¯ hat geschrieben:Echt mal, er kann ruhig mal in Echtzeit antworten diese faule Socke,
ich habe nicht den ganzen Tag öh Minute Zeit. Ich habe nicht umsonst
79 € bezahlt. :mrgreen:
Dir ist aber schon klar, dass RSBasic auch nur ein ganz "gewöhnlicher" (*) User ist... oder ?

(* zwar Moderator in diesem Forum, trotzdem hat er nix von den besagten 79€)
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
Antworten