Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

GTK tutorial
Gehe zu Seite Zurück  1, 2, 3  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 16:40    Titel: Antworten mit Zitat

muss man um das entprodukt ausführen zu können irgend was installieren wie net framework bei visual basic?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 26.07.2011, 16:59    Titel: Antworten mit Zitat

Natürlich. Die entsprechende Runtime muss im %PATH% oder in einem anderen Suchpfad liegen. Üblicherweise würdest du also die wx-c Runtime (vermutlich sowas wie wx-c-versionsnummer.dll) mit deinem Programm mitliefern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.07.2011, 17:01    Titel: Antworten mit Zitat

Wenn du die 0.3er Version des Designers nutzt, brauchst du, wie im Thread beschrieben, den dazugehörigen Wrapper, der sich im Link dahinter verbirgt. Bei der 0.2er Version brauchst du nur die enthaltene wx-c.dll.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 17:09    Titel: Antworten mit Zitat

und wie bringe ich diesen Wrapper ein?
ich habe echt keine ahnung von so einem zeug usw...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.07.2011, 17:18    Titel: Antworten mit Zitat

Deswegen liegt da eine Readme bei. Du musst im Grunde den Ordner wx-c 0.9.2 in deinen inc-Ordner deiner FreeBASIC-Installation und die .lib.a aus dem Ordner /lib/win32 in die gleiche Ordnerstruktur deiner FreeBASIC-Installation kopieren. Danach kannst du die vom Designer erzeugten Codes ganz normal starten, sofern du die wx-c-0-9-0-2.dll im gleichen Ordner wie die erstellte Exe hast.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 17:25    Titel: Antworten mit Zitat

das is mir zuviel . ich machs lieer mit der vorherigen version. aber is da was schlechter dran?? also zumindest hab ich gemerkt das man keine erstellten sachen erneut bearbeiten kann und das is echt doof...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.07.2011, 17:52    Titel: Antworten mit Zitat

Die alte Version nutzt halt die alte Version vom Wrapper und da sind sicher einige Bugs mehr drin als in der neuen.

Der Designer spuckt im Moment nur Code aus, heißt du kannst die Positionen im Code auch noch anpassen. Ich werde jetzt aber an einer Methode arbeiten, damit man auch die Forms speichern kann, das wird aber einige Vorarbeit brauchen weil ich noch mehr plane, wird also noch etwas dauern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 17:57    Titel: Antworten mit Zitat

ja aber ich check das ned mit dem wrapper. kannsnte das nochmal ausführlich erklären?

und zweitens zumindest bei der alten version ist es so dass er wenn man menüs erstellt er in der bas datei die gleiche variable nimmt und somit das ding ned funzt. das kann man zwar per hand immer ändern aber sobald man es neu abspecihert überschreibt er es wieder
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 18:17    Titel: Antworten mit Zitat

ach und noch was . da steht wenn man das den vwx öffnen will dass die datei msvcr71.dll fehle. ich habe einfach mal auf meinem komplettem rechner gesucht und fand die datei 5 mal. einmal in java, einmal in einem computer spiel und noch in ein paar quellen. ich habe mir einfach die datei kopiert und es ging. aber ist das so richtig?!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.07.2011, 19:14    Titel: Antworten mit Zitat

wx-c ist nicht die eigentliche Programmbibliothek für die Grafik sondern wxWidgets. Das ist aber in C++ geschrieben und zur Zeit kann FB das eben noch nicht direkt einbinden. wx-c ist der C-Wrapper dafür, er hüllt die C++ Funktionen in einfache C-Funktionen, die FB versteht. Der eigentliche Wrapper ist die dll. Um darauf zuzugreifen brauchst du sog. Header. Das sind die Dinger, die im Code ganz oben mit INCLUDE eingefügt werden. Darin sind die Funktionen definiert, so dass FB weiß, wo in der dll die entsprechende Funktion ist (bzw welche Funktionen darin sind). Der alte Designer baut auf dem alten Wrapper auf, auf der Versoin 0.7.2, der eneuauf der Version 0.9.2.

Der Menü-Bug ist ein Fehler des Designers und ist in der neuen Version schon lange behoben.
Da der Designer zur Zeit nur ausgibt, ist ihm natürlich egal was du da per Hand im Code machst, das wird sich auch nicht ändern.

Die msvcr71.dll ist die C Runtime von Microsoft und liegt für gewöhnlich in "%windir%\system32\". Da du sie extra besorgen musstest heißt, dass sie bei dir nicht dort liegt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 20:12    Titel: Antworten mit Zitat

ist das jetzt schlecht dass sie da nicht liegt? oer soll ich sie einfach mal reinkopieren?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 20:14    Titel: Antworten mit Zitat

noch eine frage. kann man das fenster so einstellen dass wie bei gtk sich die größe verändern lässt und dabei das verhältnis sich automatisch anpasst?
wenn nicht dann muss ich doch wieder auf gtk umsteigen... denn diese funktion ist bei dem programm was ich vorhabe sehr wichtig
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 26.07.2011, 21:01    Titel: Antworten mit Zitat

Du musst sie nicht reinkopieren, bei so einer Lib würde es sich aber empfehlen.

Das geht schon, allerdings musst du das per Hand im Code machen. Wenn du z.B. beim wxFrame_Create() das "Xor wxRESIZE_BORDER" rausstreichst, kannst du das Fenster schon mal verändern, wenn du dann noch die Widgets der Größe anpassen willst, musst du das 'wxEvent_EVT_SIZE' vom Hauptfenster abfangen und dann deine Widgets neu zeichnen lassen mit angepassten Größen.

Das könnte dann so aussehen:
Code:
#Include "wx-c 0.9.2/wx.bi"

Declare Sub button0_event WXCALL ( event As wxEvent Ptr, iListener As wxInt )
Declare Sub eventsub ( event As wxEvent Ptr, iListener As wxInt )

Dim Shared As wxApp Ptr wx_app
Dim Shared As wxFrame Ptr wx_frame
Dim Shared As wxPanel Ptr wx_panel
Dim Shared As wxTextCtrl Ptr textctrl0
Dim Shared As wxButton Ptr button0
Dim Shared As wxStaticLine Ptr staticline0

Function App_OnInit WXCALL( ) As wxBool
   
    wx_frame = wxFrame_ctor( )
    wxFrame_Create(wx_frame, WX_NULL, -1, wxString_ctorUTF8("test01"), _
                    -1, -1, 390, 390, wxFRAME_DEFAULT_STYLE _
                                        Or  wxCLOSE_BOX _
                                        Xor wxMAXIMIZE_BOX, NULL )
   
   
    wx_panel = wxPanel_ctor2(wx_frame, _
                             -1,  -1, -1 ,  -1, -1 , _
                             0, WX_NULL)
    wxEvtHandler_proxy( wx_panel, Cast(EventListener, @eventsub) )
    wxEvtHandler_Connect( wx_panel, wxEvent_EVT_SIZE( ), -1, -1, 0 )

    ''
    '' create widget button0
    ''
    button0 = wxButton_ctor()
    wxButton_Create( button0, wx_panel, -1, wxString_ctorUTF8("button0"), _
                     70, 270, 250, 60 , 0, 0, WX_NULL )
   
    wxEvtHandler_proxy(button0, @button0_event)
    wxEvtHandler_Connect(button0, _
                         wxEvent_EVT_COMMAND_BUTTON_CLICKED(), _
                         -1, -1, 0)
   
   
    ''
    '' create widget staticline0
    ''
    staticline0 = wxStaticLine_ctor( )
    wxStaticLine_Create(staticline0, wx_panel, -1, _
                        30, 250 , 330, 10, 0, WX_NULL)
   
    ''
    '' create widget staticbox0
    ''
    Dim As wxStaticBox Ptr staticbox0
    staticbox0 = wxStaticBox_ctor( )
    wxStaticBox_Create( staticbox0, wx_panel, -1, wxString_ctorUTF8("staticbox0"), _
                       10, 10 , 120, 90, 0, WX_NULL)

    ''
    '' create widget checkbox0
    ''
    Dim As wxCheckBox Ptr checkbox0
    checkbox0 = wxCheckBox_ctor( )
    wxCheckBox_Create(checkbox0, staticbox0, -1, wxString_ctorUTF8("checkbox0"),  _
                      10, 20, -1, -1, 0, 0, WX_NULL)
    wxCheckBox_SetValue( checkbox0, 0 )
    ''
    '' create widget checkbox1
    ''
    Dim As wxCheckBox Ptr checkbox1
    checkbox1 = wxCheckBox_ctor( )
    wxCheckBox_Create( checkbox1, staticbox0, -1, wxString_ctorUTF8("checkbox1"), _
                      10, 40 ,-1, -1 , 0, 0, WX_NULL)
    wxCheckBox_SetValue( checkbox1, 0 )
    ''
    '' create widget checkbox2
    ''
    Dim As wxCheckBox Ptr checkbox2
    checkbox2 = wxCheckBox_ctor( )
    wxCheckBox_Create( checkbox2, staticbox0, -1, wxString_ctorUTF8("checkbox2"),  _
                       10, 60 ,  -1, -1 , 0, 0, WX_NULL)
    wxCheckBox_SetValue( checkbox2, 0 )
    ''
    '' create widget textctrl0
    ''
    'Dim As wxTextCtrl Ptr textctrl0
    textctrl0 = wxTextCtrl_ctor( )
    wxTextCtrl_Create( textctrl0, wx_panel, -1,  wxString_ctorUTF8("textctrl0"), _
                       40, 220 ,  310, 21 , 0, 0, WX_NULL)
    wxWindow_Show( wx_frame, 1 )
    wxApp_OnInit( wx_app )
   Return 1
End Function

Function App_OnExit WXCALL As wxInt
  Return wxApp_OnExit( wx_app )
End Function

Sub button0_event WXCALL (event As wxEvent Ptr, iListener As wxInt )
  Select Case wxEvent_GetEventType( event )
    Case wxEvent_EVT_COMMAND_BUTTON_CLICKED
         wxTextCtrl_SetValue(textctrl0, wxString_ctorUTF8("Blabla"))
  End Select
End Sub

Sub eventsub ( event As wxEvent Ptr, iListener As wxInt )
   Static As wxInt last_w
   
   Dim As wxInt w, h, panelw
   Dim As wxSize Ptr temp = wxSize_ctor( -1, -1 )
   Dim As wxSize Ptr paneltemp = wxSize_ctor( -1, -1 )
   
   wxWindow_GetClientSize( wx_panel, paneltemp )
   panelw = wxSize_GetWidth( paneltemp )
   
   If last_w = 0 Then
      last_w = panelw
      wxEvent_Skip(event, 0)
   EndIf
   
   wxWindow_GetClientSize( textctrl0, temp )
   w = wxSize_GetWidth( temp )
   h = wxSize_GetHeight( temp )
   wxWindow_SetClientSize( textctrl0, w-(last_w-panelw), h )
   
   wxWindow_GetClientSize( button0, temp )
   w = wxSize_GetWidth( temp )
   h = wxSize_GetHeight( temp )
   wxWindow_SetClientSize( button0, w-(last_w-panelw), h )
   
   wxWindow_GetClientSize( staticline0, temp )
   w = wxSize_GetWidth( temp )
   h = wxSize_GetHeight( temp )
   wxWindow_SetClientSize( staticline0, w-(last_w-panelw), h )
   
   last_w = panelw
End Sub


''main
wx_app = wxApp_ctor()
wxApp_RegisterVirtual(wx_app, @App_OnInit, @App_OnExit)
wxApp_Run()

(Code für neuen Wrapper)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 21:18    Titel: Antworten mit Zitat

wenn ich die komplimierte exe jetzt starten will , läuft es zwar aber es kommt die fehler meldung dass die datei comctl32.dll fehlt... was ist das?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 26.07.2011, 21:34    Titel: Antworten mit Zitat

Hast du Windows 3? grinsen Bei jedem Windows >= 95 sind die Common Controls vorinstalliert.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 21:36    Titel: Antworten mit Zitat

ich habe windows 7. ist das jetzt was schlechtes??
is mein pc kaputt weil der soviele sachen nicht hat??
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 26.07.2011, 21:41    Titel: Antworten mit Zitat

Haha du hast die dein Windows nur mit hoher Wahrscheinlichkeit ausm Netz gezogen und der Cracker hat etwas übereifrig aufgeräumt D: oder du hast deinen %PATH% kaputt gebastelt
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 21:42    Titel: Antworten mit Zitat

nein flasch. ich habe mir legal im euronics windows 7 professional gekauft..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Emporea1997



Anmeldungsdatum: 07.07.2011
Beiträge: 58

BeitragVerfasst am: 26.07.2011, 21:43    Titel: Antworten mit Zitat

soll ich villeicht mein windows neu aufsetzen??
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1837
Wohnort: [JN58JR]

BeitragVerfasst am: 27.07.2011, 00:10    Titel: Antworten mit Zitat

@28398 ... Es kann auch gut sein, da auf Win Vista & Win 7 die Common Controls garnicht mehr vorhanden sind. (Dank .NET) (aber, weis ich nicht genau)
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Bibliotheken Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3  Weiter
Seite 2 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz