|
3 registered members (vicknick, 7th_zorro, Quad),
990
guests, and 12
spiders. |
|
Key:
Admin,
Global Mod,
Mod
|
|
|
Re: button panel mehrmals benutzen
[Re: Kartoffel]
#417773
02/17/13 12:34
02/17/13 12:34
|
Joined: Oct 2008
Posts: 341
ratz
OP
Senior Member
|
OP
Senior Member
Joined: Oct 2008
Posts: 341
|
hey danke ! genau das habe ich gesucht ich werede mich bald wieder melden und nen paar screenshots machen
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417779
02/17/13 13:56
02/17/13 13:56
|
Joined: Oct 2008
Posts: 341
ratz
OP
Senior Member
|
OP
Senior Member
Joined: Oct 2008
Posts: 341
|
achja hier mein bild:  der button muss noch versetzt werden aber ich hab keine ebende (layer) in pan_setbutton und beim clicken kommt wieder ne fehlermedung
Last edited by ratz; 02/19/13 19:25.
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417781
02/17/13 14:15
02/17/13 14:15
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
ein button ist kein eigenständiges panel.
du musst ihn per pan_setbutton auf einem panel platzieren.
POTATO-MAN saves the day! - Random
|
|
|
Re: button panel mehrmals benutzen
[Re: Kartoffel]
#417782
02/17/13 14:33
02/17/13 14:33
|
Joined: Oct 2008
Posts: 341
ratz
OP
Senior Member
|
OP
Senior Member
Joined: Oct 2008
Posts: 341
|
 okey jetzt hab ich alle fehler geschafft zu beheben , nun wenn ich aber den knopf drücke springt der das fenster (was aus rand und scheibe besteht) zu pos x 0 , pos y 0 hier die gui.c abgeändert
BMAP* hwnd_button_up = "small_b_down.bmp";
BMAP* hwnd_button_down = "small_b_up.bmp";
var i_1 = 0;
var i_2 = 0;
var i_3 = 0;
PANEL* main_pan = { bmap = "main.bmp"; flags = SHOW; }
PANEL* hwnd_win_small[5];
PANEL* hwnd_ran_small[5];
PANEL* hwnd_but_small[5];
//////////////////////////////////////////
function move_me()
{
while(mouse_left == 1)
{
hwnd_win_small[i_1].pos_x = mickey.x;
hwnd_win_small[i_1].pos_y = mickey.y;
hwnd_ran_small[i_1].pos_x = mickey.x;
hwnd_ran_small[i_1].pos_y = mickey.y;
hwnd_win_small[i_3].pos_x = mickey.x;
hwnd_win_small[i_3].pos_y = mickey.y;
wait(1);
}
}
function create_hwnd_win()
{
hwnd_win_small[i_1] = pan_create("bmap = hwnd_win_1.bmp; flags = VISIBLE | TRANSLUCENT", 20);
hwnd_win_small[i_1].pos_x = 100;
hwnd_win_small[i_1].pos_y = 100;
}
function create_hwnd_ran()
{
hwnd_ran_small[i_2] = pan_create("bmap = hwnd_win_1_rand.bmp; flags = VISIBLE | OVERLAY", 30);
hwnd_ran_small[i_2].pos_x = 100;
hwnd_ran_small[i_2].pos_y = 100;
}
function create_hwnd_but()
{
hwnd_but_small[i_3] = pan_setbutton(main_pan,0,0,250,230,hwnd_button_up,hwnd_button_down,hwnd_button_up,NULL,move_me,NULL,NULL);
}
ich hoffe ich nerve euch nicht mit mein ganzen rumgefrage ich zeig ja code und screenshots 
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417783
02/17/13 14:41
02/17/13 14:41
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
mickey ist die Mausbewegug des letzten Frames in pixeln (und .z die des mausrads * 120). Ich schätze du willst das Panel an die Mausposition bringen? Dann benutze 'mouse_pos.x' und 'mouse_pos.y'. Und damit mouse_pos automatisch geupdated wird setze am besten am Programmstart mouse_mode = 4; Und nein, du nervst mit deinen Fragen nicht  Vor Allem, da du einer derjenigen bist, die wenigstens auf einem zivilisierten Niveau reden bzw. fragen können  Es gab schon Leute, die angefangen haben Andere zu beleidigen... EDIT: wenn du willst geb ich dir ein Beispiel, wie man ein Panel per Code erstellt und mit der Maus bewegt
Last edited by Kartoffel; 02/17/13 15:27.
POTATO-MAN saves the day! - Random
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417837
02/18/13 17:02
02/18/13 17:02
|
Joined: Oct 2008
Posts: 341
ratz
OP
Senior Member
|
OP
Senior Member
Joined: Oct 2008
Posts: 341
|
hehe ... es tuts 
...
//kill_hwnd() -> neuer button mit kill function
function kill_hwnd()
{
reset(hwnd_win_small[i_1],VISIBLE);
reset(hwnd_ran_small[i_2],VISIBLE);
i_1 -= 1;
i_2 -= 1;
}
...
// test_me() -> in main einbinden
function test_me()
{
while(1)
{
if (key_a ==1)
{
wait(-1);
i_1 += 1;
i_2 += 1;
i_3 += 1;
create_hwnd_win();
create_hwnd_ran();
create_hwnd_but();
}
wait(1);
}
}
jetzt kann ich alle nacheinander mit EINEN button bewege,löschen und mit A taste neue erzeugen  okey okey danke für alles jetzt kann der spaß richtig losgehen  eins noch: wie kann ich den pan_setbutton eine layer ebende nach oben machen ? und: gibt es eine möglichkeit das main.pcx wie in c++/allegro als buffer darstellen zu lassen , also das nur ein hintergrund simuliert wird ? weil wenn sich der knopf bewegen soll dann bewegt sich auch der main_pan mit
Last edited by ratz; 02/18/13 17:14.
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417838
02/18/13 17:14
02/18/13 17:14
|
Joined: Jun 2009
Posts: 2,210 Bavaria, Germany
Kartoffel
Expert
|
Expert
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
|
eins noch: wie kann ich den pan_setbutton eine layer ebende nach oben machen ? leider garnicht... außer du erstellst ein zweites, leeres panel nur mit dem button drauf ...einer der Gründe, weshalb ich mir warscheinlich ein eigenes System mit Panels schreib.
POTATO-MAN saves the day! - Random
|
|
|
Re: button panel mehrmals benutzen
[Re: ratz]
#417905
02/19/13 12:44
02/19/13 12:44
|
Joined: Oct 2008
Posts: 341
ratz
OP
Senior Member
|
OP
Senior Member
Joined: Oct 2008
Posts: 341
|
hey ! ich hab ne möglichkeit gefunden, wie man den pan_setbutton eine Layerebende hinzufügt !!!
PANEL* main_pan =
{
//bmap = "main.bmp";
pos_x = 100;
pos_y = 100;
flags = SHOW;
layer = 40; // -> pan_setbutton layer ebende ;)
}
...
function create_hwnd_but()
{
hwnd_but_small[i_3] = pan_setbutton(main_pan,0,0,150,0,hwnd_button_up,hwnd_button_down,hwnd_button_up,NULL,move_me,NULL,NULL);
hwnd_but_small[i_3] = pan_setbutton(main_pan,0,0,250,250,hwnd_button_up,hwnd_button_down,hwnd_button_up,NULL,kill_hwnd,NULL,NULL);
}
...
will man, dass der knopf sich mitbewegt braucht man noch folgendes
function move_me()
{
while(mouse_left == 1)
{
...
main_pan.pos_x += mickey.x;
main_pan.pos_y += mickey.y;
wait(1);
}
}
Last edited by ratz; 02/19/13 12:45.
|
|
|
Moderated by mk_1, Perro, rayp, Realspawn, Rei_Ayanami, rvL_eXile, Spirit, Superku, Tobias, TSG_Torsten, VeT
|