How to get a screenshot?
Konstantin Kutsevalov via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Sep 25 09:56:40 PDT 2016
This is example:
```
import std.stdio;
import gtk.Main;
import gtk.MainWindow;
import gtk.VBox, gtk.Label, gtk.Button;
import gdk.Gdk;
import gdk.Window;
import gdk.Pixbuf;
private import stdlib = core.stdc.stdlib : exit;
int main(string[] args)
{
Main.init(args);
new ApMainWindow();
Main.run();
return 0;
}
class ApMainWindow : MainWindow
{
this()
{
super("Screen Capture");
setTitle("Screen Capture Example");
setDefaultSize(250, 120);
VBox box = new VBox(false, 2);
box.add(new Button("ScreenShot", &screenSave));
box.add(new Button("Exit", &exitProg));
add(box);
showAll();
}
void screenSave(Button button)
{
Window win = Window.getDefaultRootWindow();
int width = win.getWidth;
int height = win.getHeight;
Pixbuf screenshot = getFromWindow(win, 0, 0, width, height);
screenshot.savev("screenshot.png", "png", null, null);
}
void exitProg(Button button)
{
stdlib.exit(0);
}
}
```
More information about the Digitalmars-d-learn
mailing list