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:

Bilder und Sreenres

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Zeus



Anmeldungsdatum: 12.03.2006
Beiträge: 9

BeitragVerfasst am: 12.03.2007, 20:20    Titel: Bilder und Sreenres Antworten mit Zitat

Hallo,
ich habe mit "meinen" Code (habe ihn aus verschiedenen Forenbeiträgen zusammengestellt) ein Problem.
Für meinen AutoPC habe ich eine Ganganzeige erstellt. Klappt gut und arbeitet zuverlässig. Weil ich im Autopc keine Tastatur habe, will ich nun das Programm über den Touchscreen beenden. Dazu habe ich einen Ende- Button eingefügt. Das klappt auch gut, aber leider nicht, wenn Screenres aktiviert ist. Da wird der Button nicht angezeigt. Das Beenden funktioniert aber.
Wer kann mir helfen, was muss ich ändern?
Erstmal besten Dank

    #include "vbcompat.bi"
    screen 18,32,,0
    ScreenRes 112, 190
    dim bild1 as any ptr
    dim bild2 as any ptr
    declare FUNCTION NotSW( BYVAL src AS UINTEGER, BYVAL dest AS UINTEGER ) AS UINTEGER

    bild1=IMAGECREATE(103,120) 'Bildgröße
    bild2=IMAGECREATE(103,40)
    cls

    color rgb (255,255,00)
    line (1, 6)-(110, 184),, bf 'Rahmen für beide Bilder

    COLOR rgb (0,0,0)
    LINE (2, 7)-(109, 133), , Bf 'oberes Bild

    COLOR rgb (0,0,0)
    LINE (2, 140)-(109, 183), , Bf 'unteres Bild
    bload "D:\FreeBasic\b2.bmp",bild2
    put (3,142),bild2


    '----------------------LPT Abfrage-----------------------------------------
    do
    A = (120 - (INP(889) AND 120)) / 8

    IF A = 0 THEN Gosub G0
    IF A = 1 THEN Gosub G1
    IF A = 2 THEN Gosub G2
    IF A = 3 THEN Gosub G3
    IF A = 4 THEN Gosub G4
    IF A = 5 THEN Gosub G5
    IF A = 6 THEN Gosub G6
    IF A = 7 THEN Gosub GR

    IF INKEY$ = CHR$ (27) THEN Goto ende

    getmouse a,b,,buttons
    button = buttons and 1

    '---------------------------------Button1---------------------------------------
    if button=0 and a>7 and a < 140 and b>130 and b<191 then

    COLOR rgb (0,0,0)
    LINE (2, 140)-(109, 183), , Bf
    bload "D:\FreeBasic\b21.bmp",bild2
    put (3,142),bild2,CUSTOM, @NotSW
    'sleep 100
    Else

    COLOR rgb (0,0,0)
    LINE (2, 140)-(109, 183), , Bf
    bload "D:\FreeBasic\b2.bmp",bild2
    put (3,142),bild2,CUSTOM, @NotSW
    'sleep 100
    end if
    if button=1 and a>7 and a < 140 and b>130 and b<191 then
    goto ende
    end if

    Sleep 20
    loop

    FUNCTION NotSW( BYVAL src AS UINTEGER, BYVAL dest AS UINTEGER ) AS UINTEGER
    If dest=rgb(0,0,0) then
    NotSW=src
    else
    NotSW=dest
    end if
    END FUNCTION
    ende:
    End
    '--------------------Bilder zu Parallelport-------------------------------------
    G0:
    bload "D:\FreeBasic\0.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G1:
    bload "D:\FreeBasic\1.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G2:
    bload "D:\FreeBasic\2.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G3:
    bload "D:\FreeBasic\3.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G4:
    bload "D:\FreeBasic\4.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G5:
    bload "D:\FreeBasic\5.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    G6:
    bload "D:\FreeBasic\6.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return
    GR:
    bload "D:\FreeBasic\R.bmp",bild1
    put (3,9),bild1,CUSTOM, @NotSW
    Return


Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 12.03.2007, 22:13    Titel: Antworten mit Zitat

Hi Zeus,
zu deinem Jahrestag wünsche ich dir alles Gute(Ja, du bist heute genau ein Jahr dabei grinsen)
..und solltest eigentlich wissen, daß ProgrammCode mit Code und nicht mit List als BasicCode dargestellt wird(Nein, dafür brauchst du dich nicht zu bedanken, ist ForenService lachen )
Richtig geschenkt bekommst du meine Version deines Programms:
Code:
#include "vbcompat.bi"
Const Esc=Chr(27)
Screen 18, 32,, 0
ScreenRes 112, 190
Dim Bild1 As Any Ptr
Dim Bild2 As Any Ptr
Declare Function NotSW(byVal Src As UInteger, byVal Dest As UInteger) As UInteger

Bild1=ImageCreate(103, 120) 'Bildgröße
Bild2=ImageCreate(103, 40)
Cls
Color RGB(255, 255, 0)
Line (1, 6)-(110, 184),, bf 'Rahmen für beide Bilder

Color 0
Line (2, 7)-(109, 133),, Bf 'oberes Bild

Color 0 'Warum nochmal?
Line (2, 140)-(109, 183),, Bf 'unteres Bild
BLoad "D:\FreeBasic\b2.bmp", Bild2
Put (3, 142), Bild2


'----------------------LPT Abfrage-----------------------------------------
Do
  a=(120-(Inp(889) And 120))/8
  Select Case a
    Case 0
      BLoad "D:\FreeBasic\0.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 1
      BLoad "D:\FreeBasic\1.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 2
      BLoad "D:\FreeBasic\2.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 3
      BLoad "D:\FreeBasic\3.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 4
      BLoad "D:\FreeBasic\4.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 5
      BLoad "D:\FreeBasic\5.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 6
      BLoad "D:\FreeBasic\6.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
    Case 7
      BLoad "D:\FreeBasic\R.bmp", Bild1
      Put (3, 9), Bild1, Custom, @NotSW
  End Select
 
  If Inkey=Esc Then End
  GetMouse a, b,, Buttons
  Button=Buttons And 1

'---------------------------------Button1---------------------------------------
  If Button=0 And a>7 And a<140 And b>130 And b<191 Then
    Color 0
    Line (2, 140)-(109, 183),, Bf
    BLoad "D:\FreeBasic\b21.bmp", Bild2
    Put (3,142), Bild2, Custom, @NotSW
    'Sleep 100
  Else
    Color 0
    Line (2, 140)-(109, 183),, Bf
    BLoad "D:\FreeBasic\b2.bmp", Bild2
    Put (3,142), Bild2, Custom, @NotSW
    'Sleep 100
  End If
  If Button=1 And a>7 And a<140 And b>130 And b<191 Then End
  Sleep 20
Loop

Function NotSW(byVal Src As UInteger, byVal Dest As UInteger) As UInteger
  Return IIF(Dest=0, Src, Dest)
End Function
Das wars erstmal, denn so kann ich es lesen grinsen
Gruß
ytwinky
P.S.:
Der GOTO-Hunter läßt auch grüßen..
..denn er hat wieder zugeschlagen vor lachen auf dem Boden rollen
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 13.03.2007, 10:30    Titel: Antworten mit Zitat

Hi,
ich bin mir nicht sicher, aber durch die Kombination von
Code:
Screen 18, 32,, 0
ScreenRes 112, 190
könnte der 32Bit - Modus durch 'ScreenRes 112, 190' aufgehoben werden.
Versuch mal nur
Code:
ScreenRes 112, 190, 32,,0

_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Zeus



Anmeldungsdatum: 12.03.2006
Beiträge: 9

BeitragVerfasst am: 13.03.2007, 10:46    Titel: Antworten mit Zitat

Hallo,
erstaml ein herzliches Dankeschön an Volta und Ytwinky. Nache der ersten Antwort habe wieder versucht, das ganze perfekt zum Laufen zu bringen, wollte aber nicht so wie ich.
Volta hat schließlich die Lösung gefunden.
Also allen noch einen erfolgreichen Tag.
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 -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
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