Button soll Datei ausführen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
by night
Beiträge: 45
Registriert: 24.02.2007 21:52

Button soll Datei ausführen

Beitrag von by night »

Hallo zusammen,

Folgendes: Ist es möglich, einen Button zu erstellen, und das Ausführen einer Datei auf diesen Button zu "verlinken"? Wenn ich zum Beispiel auf den Button "XYZ" klicke, startet er nach dem Klick auf den Button, die gewählt Anwendung.

Zum Verstehen wäre wie immer ein Beispiel ganz gut zum Verstehen :)




MfG

edit: Titel etwas aussagekräftiger gemacht, ts-soft
PureBasic v4.00 (Windows - x86)
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

ja, das ist möglich. Wenn du feststellst, dass ein bestimmtes Gadget gedrückt wurde, musst du einfach nur deine Aktionen ausführen, die du möchtest!

Beispiel:

Code: Alles auswählen

OpenWindow(0, 0, 0, 200, 100, "Button-Beispiel")
CreateGadgetList(WindowID(0))
	ButtonGadget(1, 10, 10, 180, 80, "Notepad starten")

Repeat
	event_w=WaitWindowEvent()
	event_g=EventGadget()
	
	Select event_w
		Case #PB_Event_CloseWindow
			End
		Case #PB_Event_Gadget
			Select event_g
				Case 1
					RunProgram("notepad.exe")
			EndSelect
	EndSelect
ForEver
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
by night
Beiträge: 45
Registriert: 24.02.2007 21:52

Beitrag von by night »

Code: Alles auswählen


DataSection
   Bild: IncludeBinary "c:\stalker.bmp"
EndDataSection


If OpenWindow(0, 0, 0, 500, 306, "Text1",  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered) And CreateGadgetList (WindowID(0))
   ImageGadget(1, 10, 10, 410, 60, CatchImage(0, ?Bild))
   ButtonGadget(2, 430, 10, 60, 60, "Text2", #PB_Button_MultiLine | #PB_Button_Default)
   TextGadget(3, 10, 80, 480, 130, "Text3", #PB_Text_Border)
   TextGadget(4, 10, 220, 130, 50, "Text4", #PB_Text_Border)
   StringGadget(5, 10, 280, 130, 20, "         Text5", #PB_String_ReadOnly)
   TextGadget(6, 150, 220, 260, 80, "Text6", #PB_Text_Border)
   ButtonGadget(7, 420, 220, 70, 80, "Text7", #PB_Button_Default | #PB_Button_MultiLine)
EndIf
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow  
Ich kriege es einfach nicht hin, ein MessageRequester hinter den Text2 Button zu schieben. Könnte mal jemand den Code zum Einbinden des MessageRequesters hinter den Text2 Button dort reinfummeln? Wäre mir eine große Hilfe.


/edit: Drücken auf Button --> MessageRequester

/edit2: Mal abgesehen davon, dass ich das Thema "Öffnen einer Anwendung per Buttonklick" überhaupt nicht verstehe. Und das obwohl, ich das Kapitel "Select etc." in der Hilfe schon 10 mal versucht habe zu verstehen bzw. mit ANDs Code zu vergleichen.
PureBasic v4.00 (Windows - x86)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

>> Könnte mal jemand den Code zum Einbinden des MessageRequesters hinter den Text2 Button dort reinfummeln?
Du mir Leid, total unlogisch
Möchtest Du beim Drücken dieses Buttons einen Messagerequester, so ist
dieser in der Ereignisschleife an passender Stelle zu erzeugen.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Warum hab ich das Gefühl das du den code von AND51 komplett ignoriert hast? Ich meine das kann man kaum noch vereinfachen. Ich glaube du hast Probleme mit abstrakten Denken. Denn du must im code con AND51 lediglich RunProgramm() gegen MessageRequester() austauschen.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
by night
Beiträge: 45
Registriert: 24.02.2007 21:52

Beitrag von by night »

Fluid Byte hat geschrieben: Ich glaube du hast Probleme mit abstrakten Denken.
Das könnte gut möglich sein. Oder ich verstehe es schlichtweg noch nicht und muss alles noch mal in Ruhe durchgehen. Aber ich hoffe du hättest keine Probleme mit nicht abstrakt denkenden Menschen wie mir :wink:
PureBasic v4.00 (Windows - x86)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

vielleicht solltest du erst einmal von den windows-oberflächen weggehen,
und dich eher allgemein mit variablen, berechnungen, bedingungen und schleifen auseinandersetzen.

ein verständnis der grundlegenden dinge ist erst einmal notwendig bevor man irgendwelchen code schreiben kann.

dies hier ist nicht VisualBasic, wo man im Designer auf nen Button rechtsclickt und einen einzigen befehl eingibt und es läuft.
in PB musst du dich eben um die event-bearbeitung selber kümmern.

dafür kannst du jedoch auch code schreiben, der überhaupt keine fenster und buttons benötigt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

by night hat geschrieben:Aber ich hoffe du hättest keine Probleme mit nicht abstrakt denkenden Menschen wie mir :wink:
Ne, aber mit lernresistenten.
"Ich reserviere 4 Byte, schreibe aber 5 rein. Da auf heuteigen PCs immer genug freie Kapazitäten vorhanden sind, geht das auch." (AND)"
Definitiv schon jetzt ein Klassiker! Bild
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

> Definitiv schon jetzt ein Klassiker!
Gott, was hab ich da nur angerichtet :D
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

AND51 hat geschrieben:Gott, was hab ich da nur angerichtet :D
Entertainment Baby! Bild
Windows 10 Pro, 64-Bit / Outtakes | Derek
Antworten