GTK window destroy_with_parent does not work











up vote
0
down vote

favorite












I am using GTK+3 in python 2.7.



I have some .glade files with windows in it and some of these windows are opening the others at the top level of themselves. I set "transient for" attribute of child windows to its parent window.
My problem is that I want to destroy the child window when its parent is destroyed. Although either I write set_destroy_with_parent(True) in the code or check it in Glade designer, it does nothing and parent window will destroy and child remains!
here is a example of my code:



self.window = self.builder.get_object("showPymnts")   #GTK Window
self.mainDlg = self.builder.get_object("FormWindow") #GTK Window
def showFunction(self , parent ):
if parent:
self.window.set_transient_for(parent)
self.window.set_destroy_with_parent(True)
self.window.show_all()

def showPayments(self,sender):
self.showFunction(self.mainDlg)


set_transient_for works fine and the child window (self.window) opens just in front of its parent.
But when I close parent window, 'self.window' still remains.
Any help would be greatly appreciated










share|improve this question
























  • I cannot duplicate your problem. You might want to post an MCVE as something I can review.
    – theGtknerd
    yesterday










  • @theGtknerd sorry. I added some code example
    – it_nazanin
    yesterday










  • It's still not an MCVE.
    – theGtknerd
    yesterday















up vote
0
down vote

favorite












I am using GTK+3 in python 2.7.



I have some .glade files with windows in it and some of these windows are opening the others at the top level of themselves. I set "transient for" attribute of child windows to its parent window.
My problem is that I want to destroy the child window when its parent is destroyed. Although either I write set_destroy_with_parent(True) in the code or check it in Glade designer, it does nothing and parent window will destroy and child remains!
here is a example of my code:



self.window = self.builder.get_object("showPymnts")   #GTK Window
self.mainDlg = self.builder.get_object("FormWindow") #GTK Window
def showFunction(self , parent ):
if parent:
self.window.set_transient_for(parent)
self.window.set_destroy_with_parent(True)
self.window.show_all()

def showPayments(self,sender):
self.showFunction(self.mainDlg)


set_transient_for works fine and the child window (self.window) opens just in front of its parent.
But when I close parent window, 'self.window' still remains.
Any help would be greatly appreciated










share|improve this question
























  • I cannot duplicate your problem. You might want to post an MCVE as something I can review.
    – theGtknerd
    yesterday










  • @theGtknerd sorry. I added some code example
    – it_nazanin
    yesterday










  • It's still not an MCVE.
    – theGtknerd
    yesterday













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I am using GTK+3 in python 2.7.



I have some .glade files with windows in it and some of these windows are opening the others at the top level of themselves. I set "transient for" attribute of child windows to its parent window.
My problem is that I want to destroy the child window when its parent is destroyed. Although either I write set_destroy_with_parent(True) in the code or check it in Glade designer, it does nothing and parent window will destroy and child remains!
here is a example of my code:



self.window = self.builder.get_object("showPymnts")   #GTK Window
self.mainDlg = self.builder.get_object("FormWindow") #GTK Window
def showFunction(self , parent ):
if parent:
self.window.set_transient_for(parent)
self.window.set_destroy_with_parent(True)
self.window.show_all()

def showPayments(self,sender):
self.showFunction(self.mainDlg)


set_transient_for works fine and the child window (self.window) opens just in front of its parent.
But when I close parent window, 'self.window' still remains.
Any help would be greatly appreciated










share|improve this question















I am using GTK+3 in python 2.7.



I have some .glade files with windows in it and some of these windows are opening the others at the top level of themselves. I set "transient for" attribute of child windows to its parent window.
My problem is that I want to destroy the child window when its parent is destroyed. Although either I write set_destroy_with_parent(True) in the code or check it in Glade designer, it does nothing and parent window will destroy and child remains!
here is a example of my code:



self.window = self.builder.get_object("showPymnts")   #GTK Window
self.mainDlg = self.builder.get_object("FormWindow") #GTK Window
def showFunction(self , parent ):
if parent:
self.window.set_transient_for(parent)
self.window.set_destroy_with_parent(True)
self.window.show_all()

def showPayments(self,sender):
self.showFunction(self.mainDlg)


set_transient_for works fine and the child window (self.window) opens just in front of its parent.
But when I close parent window, 'self.window' still remains.
Any help would be greatly appreciated







python gtk gtk3






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited yesterday

























asked Oct 31 at 11:59









it_nazanin

6115




6115












  • I cannot duplicate your problem. You might want to post an MCVE as something I can review.
    – theGtknerd
    yesterday










  • @theGtknerd sorry. I added some code example
    – it_nazanin
    yesterday










  • It's still not an MCVE.
    – theGtknerd
    yesterday


















  • I cannot duplicate your problem. You might want to post an MCVE as something I can review.
    – theGtknerd
    yesterday










  • @theGtknerd sorry. I added some code example
    – it_nazanin
    yesterday










  • It's still not an MCVE.
    – theGtknerd
    yesterday
















I cannot duplicate your problem. You might want to post an MCVE as something I can review.
– theGtknerd
yesterday




I cannot duplicate your problem. You might want to post an MCVE as something I can review.
– theGtknerd
yesterday












@theGtknerd sorry. I added some code example
– it_nazanin
yesterday




@theGtknerd sorry. I added some code example
– it_nazanin
yesterday












It's still not an MCVE.
– theGtknerd
yesterday




It's still not an MCVE.
– theGtknerd
yesterday

















active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














 

draft saved


draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53082856%2fgtk-window-destroy-with-parent-does-not-work%23new-answer', 'question_page');
}
);

Post as a guest





































active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes
















 

draft saved


draft discarded



















































 


draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53082856%2fgtk-window-destroy-with-parent-does-not-work%23new-answer', 'question_page');
}
);

Post as a guest




















































































這個網誌中的熱門文章

Xamarin.form Move up view when keyboard appear

Post-Redirect-Get with Spring WebFlux and Thymeleaf

Anylogic : not able to use stopDelay()