#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <fcntl.h>
#include <gtk/gtk.h>
#include <string.h>
#include "sungtk_interface.h"
#include "sungtk_interface.c"
GtkWidget * window;
GtkWidget * window2;
int i=0;
int a=0;
char *buf[4]={"loadfile ./music/coffe.mp3\n","loadfile ./music/cunzai.mp3\n","loadfile ./music/爱上你很快乐.mp3\n","loadfile ./music/邓紫棋-泡沫.mp3\n"};
void next_song(GtkButton*button,gpointer user_data)
{
i++;
if (i>3)
{
i=0;
}
int fd = open("fifo_cmd",O_RDWR);
write(fd,buf[i],strlen(buf[i]));
}
void up_song(GtkButton*button,gpointer user_data)
{
i--;
if (i<0)
{
i=3;
}
int fd = open("fifo_cmd",O_RDWR);
write(fd,buf[i],strlen(buf[i]));
}
void jingyin (GtkButton*button,gpointer user_data)
{
int fd=open("fifo_cmd",O_RDWR);
a++;
if (a%2==0)
{
write(fd,"mute 1\n",sizeof("mute 1\n")-1);
}
else
{
write(fd,"mute 0\n",sizeof("mute 0\n")-1);
}
}
{
if (mute=0)
{
printf("播放状态:播放\n");
}
else
{
printf("播放状态:暂停\n");
}
int fd = open("fifo_cmd",O_RDWR);
write(fd,"mute\n",sizeof("mute"));
}
void back_pause(GtkButton*button,gpointer user_data)
{
printf("==============\n");
int fd = open("fifo_cmd",O_RDWR);
write(fd,"pause\n",sizeof("pause"));
}
void kill_back(GtkButton*button,gpointer user_data)
{
pid_t a=getpid();
char cmd[20]="";
sprintf(cmd,"kill %d",a+1);
system(cmd);
}
void load_image(GtkWidget *image, const char *file_path, const int w, const int h )
{
gtk_image_clear(GTK_IMAGE(image));
GdkPixbuf *src_pixbuf = gdk_pixbuf_new_from_file(file_path, NULL);
GdkPixbuf *dest_pixbuf=gdk_pixbuf_scale_simple(src_pixbuf,w,h,GDK_INTERP_BILINEAR);
gtk_image_set_from_pixbuf(GTK_IMAGE(image), dest_pixbuf);
g_object_unref(src_pixbuf);
g_object_unref(dest_pixbuf);
}
void set_label_font_size(GtkWidget *label, int size)
{
PangoFontDescription *font;
font = pango_font_description_from_string("");
pango_font_description_set_size(font, size*PANGO_SCALE);
gtk_widget_modify_font(label, font);
pango_font_description_free(font);
}
void one(GtkWidget *label, gpointer user_data)
{
gtk_widget_hide_all(window);
gtk_widget_show_all(window2);
}
void fh(GtkWidget *label, gpointer user_data)
{
gtk_widget_hide_all(window2);
gtk_widget_show_all(window);
}
int main(int argc, char *argv[])
{
pid_t pid;
mkfifo("fifo_cmd",0777);
pid=fork();在这里插入代码片
if (pid<0)
{
perror("fork");
}
else if (pid==0)
{
execlp("mplayer","mplayer","-slave","-idle","-input","file=fifo_cmd","./music/coffe.mp3",NULL);
}
else
{
while(1)
{
gtk_init(&argc ,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window,600,400);
GtkWidget * fixed = gtk_fixed_new();
gtk_container_add(GTK_CONTAINER(window),fixed);
g_signal_connect(window,"destroy",G_CALLBACK(kill_back),NULL);
GtkWidget * image=gtk_image_new_from_pixbuf(NULL);
load_image(image,"6.jpg",600,400);
gtk_fixed_put(GTK_FIXED(fixed),image,0,0);
GtkWidget * image01=gtk_image_new_from_pixbuf(NULL);
load_image(image01,"1.jpg",49,50);
GtkWidget * image02=gtk_image_new_from_pixbuf(NULL);
load_image(image02,"2.jpg",49,50);
GtkWidget * image03=gtk_image_new_from_pixbuf(NULL);
load_image(image03,"3.jpg",49,50);
GtkWidget * image04=gtk_image_new_from_pixbuf(NULL);
load_image(image04,"4.jpg",49,50);
GtkWidget * image05=gtk_image_new_from_pixbuf(NULL);
load_image(image05,"5.jpg",145,120);
GtkWidget * image07=gtk_image_new_from_pixbuf(NULL);
load_image(image07,"5.jpg",145,120);
GtkWidget * button01 = gtk_button_new();
gtk_widget_set_size_request(button01,60,60);
gtk_button_set_image(GTK_BUTTON(button01),image01);
gtk_fixed_put(GTK_FIXED(fixed),button01,100,300);
gtk_button_set_relief(GTK_BUTTON(button01), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed),button01);
g_signal_connect(button01,"pressed",G_CALLBACK(up_song),NULL);
GtkWidget * button02 = gtk_button_new();
gtk_widget_set_size_request(button02,60,60);
gtk_button_set_image(GTK_BUTTON(button02),image02);
gtk_fixed_put(GTK_FIXED(fixed),button02,200,300);
gtk_button_set_relief(GTK_BUTTON(button02), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed),button02);
g_signal_connect(button02,"pressed",G_CALLBACK(back_pause),NULL);
GtkWidget * button03 = gtk_button_new();
gtk_widget_set_size_request(button03,60,60);
gtk_button_set_image(GTK_BUTTON(button03),image03);
gtk_fixed_put(GTK_FIXED(fixed),button03,300,300);
gtk_button_set_relief(GTK_BUTTON(button03), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed),button03);
g_signal_connect(button03,"pressed",G_CALLBACK(next_song),NULL);
GtkWidget * button04 = gtk_button_new();
gtk_widget_set_size_request(button04,60,60);
gtk_button_set_image(GTK_BUTTON(button04),image04);
gtk_fixed_put(GTK_FIXED(fixed),button04,400,300);
gtk_button_set_relief(GTK_BUTTON(button04), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed),button04);
g_signal_connect(button04,"pressed",G_CALLBACK(jingyin),NULL);
GtkWidget * button05 = gtk_button_new();
gtk_widget_set_size_request(button05,150,120);
gtk_button_set_image(GTK_BUTTON(button05),image05);
gtk_fixed_put(GTK_FIXED(fixed),button05,200,180);
gtk_button_set_relief(GTK_BUTTON(button05), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed),button05);
g_signal_connect(button05,"pressed",G_CALLBACK(one),NULL);
GtkWidget * label=gtk_label_new("哆啦A梦播放器");
gtk_fixed_put(GTK_FIXED(fixed),label,150,100);
set_label_font_size(label,25);
sungtk_widget_set_font_color(label,"blue",0);
window2=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window2,600,400);
GtkWidget * fixed2 = gtk_fixed_new();
gtk_container_add(GTK_CONTAINER(window2),fixed2);
GtkWidget * image06=gtk_image_new_from_pixbuf(NULL);
load_image(image06,"7.jpg",600,400);
gtk_fixed_put(GTK_FIXED(fixed2),image06,0,0);
g_signal_connect(window2,"destroy",G_CALLBACK(kill_back),NULL);
GtkWidget * button06 = gtk_button_new();
gtk_widget_set_size_request(button06,150,120);
gtk_button_set_image(GTK_BUTTON(button06),image07);
gtk_fixed_put(GTK_FIXED(fixed2),button06,200,180);
gtk_button_set_relief(GTK_BUTTON(button06), GTK_RELIEF_NONE);
gtk_container_add(GTK_CONTAINER(fixed2),button06);
g_signal_connect(button06,"pressed",G_CALLBACK(fh),NULL);
gtk_widget_show_all(window);
gtk_main();
}
}
return 0;
}
转载请注明原文地址:https://ipadbbs.8miu.com/read-57828.html