import pygame as pg if pg.get_sdl_version() < (2,0,0): raise Exception("This example requires SDL2.") pg.init() def main(): Running = True surf = pg.display.set_mode((640,480)) font = pg.font.SysFont("Arial", 24) clock = pg.time.Clock() spr_file_text = font.render("Feed me some file or image!", 1, (255,255,255)) spr_file_text_rect = spr_file_text.get_rect() spr_file_text_rect.center = surf.get_rect().center spr_file_image = None spr_file_image_rect = None while Running: for ev in pg.event.get(): if ev.type == pg.QUIT: Running = False elif ev.type == pg.DROPBEGIN: print(ev) print("File drop begin!") elif ev.type == pg.DROPCOMPLETE: print(ev) print("File drop complete!") elif ev.type == pg.DROPTEXT: print(ev) spr_file_text = font.render(ev.text, 1, (255,255,255)) spr_file_text_rect = spr_file_text.get_rect() spr_file_text_rect.center = surf.get_rect().center elif ev.type == pg.DROPFILE: print(ev) spr_file_text = font.render(ev.file, 1, (255,255,255)) spr_file_text_rect = spr_file_text.get_rect() spr_file_text_rect.center = surf.get_rect().center #Try to open the file if it's an image filetype = ev.file[-3:] if (filetype in ["png", "bmp", "jpg"]): spr_file_image = pg.image.load(ev.file).convert() spr_file_image.set_alpha(127) spr_file_image_rect = spr_file_image.get_rect() spr_file_image_rect.center = surf.get_rect().center surf.fill((0,0,0)) surf.blit(spr_file_text, spr_file_text_rect) if (spr_file_image): surf.blit(spr_file_image, spr_file_image_rect) pg.display.flip() clock.tick(30) pg.quit() if __name__ == '__main__': main()